在主进程内可用的模块 - autoUpdater
优质
小牛编辑
159浏览
2023-12-01
虽然 autoUpdater
模块提供了一套各平台通用的接口,但是在每个平台间依然会有一些微小的差异。
在 OS X 上,autoUpdater
模块依靠的是内置的 Squirrel.Mac,这意味着你不需要依靠其他的设置就能使用。关于
更新服务器的配置,你可以通过阅读 Server Support 这篇文章来了解。
Windows
在 Windows 上,你必须使用安装程序将你的应用装到用户的计算机上,所以比较推荐的方法是用 grunt-electron-installer 这个模块来自动生成一个 Windows 安装向导。
Squirrel 自动生成的安装向导会生成一个带 的快捷方式。
Application User Model ID 的格式是 com.squirrel.PACKAGE_ID.YOUR_EXE_WITHOUT_DOT_EXE
, 比如
像 com.squirrel.slack.Slack
和 com.squirrel.code.Code
这样的。你应该在自己的应用中使用 方法设置相同的 API,不然 Windows 将不能正确地把你的应用固定在任务栏上。
服务器端的配置和 OS X 也是不一样的,你可以阅读 Squirrel.Windows 这个文档来获得详细信息。
Linux
autoUpdater
对象会触发以下的事件:
返回:
error
Error
当更新发生错误的时候触发。
事件:’checking-for-update’
当开始检查更新的时候触发。
事件:’update-available’
当发现一个可用更新的时候触发,更新包下载会自动开始。
事件:’update-downloaded’
返回:
event
EventreleaseNotes
String - 新版本更新公告releaseName
String - 新的版本号releaseDate
Date - 新版本发布的日期updateURL
String - 更新地址
在更新下载完成的时候触发。
在 Windows 上只有 是有效的。
autoUpdater
对象有以下的方法:
autoUpdater.setFeedURL(url)
设置检查更新的 url
,并且初始化自动更新。这个 url
一旦设置就无法更改。
autoUpdater.quitAndInstall()
在下载完成后,重启当前的应用并且安装更新。这个方法应该仅在 事件触发后被调用。