electron 如何通过电子方式获取应用的内部版本号

vcirk6k6  于 2022-12-16  发布在  Electron
关注(0)|答案(1)|浏览(858)

我希望在运行时获取MacOS应用的内部版本号,方法与获取应用版本的方法相同:

const { app } = require('electron');
console.log(app.getVersion()); // 1.0.0

问题是,电子似乎没有任何内置的方法来检索应用程序的内部版本号。
在MacOS应用程序中,内部版本号是“关于”面板中括号内的内部版本号。例如:
我使用forge.config.js打包我的Electron macOS应用程序,配置如下:

{
   [...]
   appVersion: '1.0.0',
   buildVersion: '123456',
}

当我打包macOS应用程序时,“关于面板”正确显示版本,显示1.0.0(123456)
有没有办法在运行时访问内部版本号?或者,至少,把它注入到打包的应用程序中,这样我就可以以某种方式检索它。

idfiyjo8

idfiyjo81#

buildVersion最终会被写入Mac应用程序包的your.app/Contents/Info.plist文件中的CFBundleVersion字段。因此,您必须在运行时读取并解析Info.plist xml文件才能获得它,AFAIK没有更简单的内置方式。这并不难做到,但它可能只是更容易为您将此信息附加到您的appVersion,如1.0.0-123456,因为它可以是任何字符串,不要求它是永远的或任何特定的格式。

相关问题