添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
黄朝忆的个人博客
登录 注册
网站设置

electron-builder自动更新

创建时间: 2025-05-12 13:09
长度: 1457
浏览: 0
评论: 0

官方文档: https://www.electron.build/publish


在package.json buildn属性下添加publist

{
    "build": {
        "appId": "xxx",
        "publish": ["github"],
    "scripts": {
        "release": "cross-env GH_TOKEN=你的github token electron-builder",
        "prerelease": "npm run build"
}


程序内增加自动代码

安装

npm i electron-updater


在main.js修改

const { autoUpdater } = require('electron-updater');
app.on('ready', () => {
    autoUpdater.autoDownload = false; // 取消自动下载
    autoUpdater.checkForUpdatesAndNotify(); // 
    autoUpdater.on('error', err => {
        dialog.showErrorBox(Error, error === null ? '未知错误' : JSON.stringify(err));
    // 有更新时
    autoUpdater.on('update-available', () => {
        dialog.showMessageBox({
            type: 'info',
            title: '应用有新的版本',
            message: '发现有新版本,是否现在更新?',
            buttons: ['是', '否']
        }, buttonIndex => {
            if (buttonIndex === 0) {
                autoUpdater.downloadUpdate();
    // 没有新版本
    autoUpdater.on('update-not-available', () => {
        dialog.showMessageBox({ 
            title: '没有新版本',
            message: '当前已经是最新版本'
    // ....
})



开发环境中测试自动更新

根目录创建一个文件 dev-app-update.yml


main.js增加代码


if (isDev) {
    // 本地调试自动更新
    autoUpdater.updateConfigPath = path.join(__dirname, './dev-app-update.yml')
if (isDev) {
    autoUpdater.checkForUpdates(); // 本地的检查更新
} else {
    autoUpdater.checkForUpdatesAndNotify(); // 检查更新
   




评论(共 0 条)