工具
打包工具 electron-builder
自动更新工具 electron-updater
1 配置服务器地址
在package.json的build下配置
...
"build"{
"publish": {
"provider": "generic",
"url": "https://www.domain.com/update"
}
}
...
这个url目录下放的是打包后的exe文件 还有latest.yml文件
这个latest.yml文件是设置了 publish这个配置之后自动生成的文件
2 编写代码
在electron文件夹下,新增update.js文件
const { autoUpdater } = require('electron-updater');
var mainWindow = null;
const checkUpdate = (win,ipcMain) => {
autoUpdater.autoDownload = true;
autoUpdater.autoInstallOnAppQuit = true;
mainWindow = win;
autoUpdater.checkForUpdatesAndNotify().catch();
ipcMain.handle('install',()=>autoUpdater.quitAndInstall());
}
module.exports = checkUpdate;
3 在main.js 中调用checkUpdate方法
const checkUpdate = require('./update')
const { app, BrowserWindow, ipcMain, Menu, shell } = require('electron')
mainWindow = new BrowserWindow({
width: 1200,
height: 800,
minWidth: 1200,
minHeight: 800,
backgroundColor: '#E0E4F8',
webPreferences: webPreferencesConfig,
icon: path.join(__dirname, 'assets/icon.png'),
show: false,
titleBarStyle: 'hidden',
frame: false
});
checkUpdate(mainWindow,ipcMain);
4 更新包和latest.yml到服务器的对应路径中
publish中配置的路径
发表回复
要发表评论,您必须先登录。