electron版本更新之全量更新(vue)

传送门:

autoUpdater | Electron

electron-builder

一、配置vue.config.js

         这里打包用的是electron-builder,在vue.config.js中配置相关参数:electronBuilder的builderOptions中加入publish:

  pluginOptions: {
    electronBuilder: {
      //...
      builderOptions: {
        //...
        win: {
          //...
          publish: [
            {
              provider: "generic",
              url: "https://xx", //打包出来的文件存放的地址
            },
          ],
        },
        //...
      },
    },
  },

二、使用autoUpdater

        在主进程中引入autoUpdater:

import { autoUpdater } from "electron-updater";

        设置autoUpdater.setFeedURL("https://xxx"):设置检查更新的 url,并且初始化自动更新。这里的url必须与publish的url一致。

        主进程:

autoUpdater.setFeedURL(updateUrl); 

if (process.env.WEBPACK_DEV_SERVER_URL) {
} else {
    createProtocol('app')
    win.loadURL('app://./index.html')
    // 检查更新
    autoUpdater.checkForUpdates()
}
//发生错误
autoUpdater.on("error", () => {
    //...
});
//有更新
autoUpdater.on("update-available", () => {
    //...
});
//没有更新
autoUpdater.on("update-not-available", () => {
    //...
});
//下载完成
autoUpdater.on("update-downloaded", () => {
    //...
});

        如果需要在下载完成后重启应用并在下载后安装更新,可以在update-downloaded中autoUpdater.quitAndInstall()。如果不需要立即更新,则不需处理,“因为下载更新文件成功之后,下次应用启动的时候会强制更新。”

总结

        以上就是electron全量更新的介绍,相对来说比较简单,大家可以借鉴一下。如果有兴趣的可以继续看一下增量更新:electron版本更新之增量更新、无感更新_Zoie_ting的博客-CSDN博客

猜你喜欢

转载自blog.csdn.net/sxww_zyt/article/details/131005298