【问题标题】:How to make an installer out of my electron app similar to vscode installation setup?如何使用我的电子应用程序制作安装程序,类似于 vscode 安装设置?
【发布时间】:2019-09-23 08:41:26
【问题描述】:
我正在尝试为我的电子应用程序进行安装设置。我已经尝试过电子生成器和电子打包器,它有效,但不是我所希望的。我想要一个类似于 vscode 的安装设置(我听说它是使用 electronjs 制作的),它是一个独立的安装程序,包含所有用户协议、路径等。如何做到这一点?是否根据用户将其安装到哪个操作系统而有所不同?我现在只关注 Windows,因为我正在创建的应用程序仅适用于 Windows。
【问题讨论】:
标签:
windows
electron
electron-builder
electron-packager
【解决方案1】:
electron-builder 是否设置了"oneClick": false?这将为您提供 PC 上的“安装向导”式安装程序。 oneClick 的默认值为 true,因此您必须明确设置它。
来自docs:
oneClick = true 布尔值 - 是创建一键式安装程序还是辅助。
perMachine = false 布尔值 - 是否显示辅助安装程序的安装模式安装程序页面(选择每台计算机或每用户)。或者是否始终按所有用户(每台机器)安装。
如果 oneClick 为 true(默认):是否按所有用户(每台机器)安装。
如果 oneClick 为 false 且 perMachine 为 true:无安装模式安装程序页面,始终按计算机安装。
如果 oneClick 为 false 且 perMachine 为 false(默认):安装模式安装程序页面。
allowElevation = true 布尔值 - 仅限辅助安装程序。允许请求提升。如果为 false,则用户必须重新启动
具有提升权限的安装程序。
- allowToChangeInstallationDirectory = false 布尔值 - 仅限辅助安装程序。是否允许用户更改安装
目录。
在 OSX 上,使用 DMG 格式,如果您指定一个许可证(也许还有“licenseButtons”JSON 文件 - 这对我有用),您将在安装 DMG 之前获得一个协议对话框。
来自docs:
要向 DMG 添加许可证,请在构建中创建文件 license_LANG_CODE.txt
资源。支持不同语言的多个许可证文件
— 使用 lang 后缀(例如 _de、_ru))。例如,创建文件
构建资源中的 license_de.txt 和 license_en.txt。如果操作系统
语言为德语,将显示 license_de.txt。见地图
要命名的语言代码。
您还可以通过传递一个
json 文件名为 licenseButtons_LANG_CODE.json。德国文件将
命名为:licenseButtons_de.json。包含文件应该有
以下格式:
{
"lang": "English",
"agree": "Agree",
"disagree": "Disagree",
"print": "Print",
"save": "Save",
"description": "Here is my own description"
}