import { dialog } from 'electron' import logger from 'electron-log' const updateURL = 'http://27.128.240.72:3000/zhuhao/AIx_Smarttalk/releases/tag/V1.0.0%28%E6%B5%8B%E8%AF%95%E7%89%88%29/' // 主进程中的更新检查 const { autoUpdater } = require('electron-updater') const updateInit = (win) => { logger.info('进来了') // 检查更新 autoUpdater.checkForUpdates() // 自动下载 autoUpdater.autoDownload = false // 设置版本更新服务器地址 // autoUpdater.setFeedURL(updateURL) //监听更新事件 autoUpdater.on('update-available', (info) => { logger.info('发现新版本') dialog .showMessageBox(win,{ type: 'info', title: '新版本可用', message: '有一个可用的新版本,要更新吗', buttons: ['是', '否'] }) .then((result) => { if (result.response === 0) { // 用户选择更新,触发下载和安装 autoUpdater.downloadUpdate() } }) }) // 没有新版本 autoUpdater.on('update-not-available', () => { logger.info('没有新版本') }) // 更新发生错误 autoUpdater.on('error', () => { logger.error('检查更新失败') }) // 跟新下载完毕 autoUpdater.on('update-downloaded', () => { dialog .showMessageBox({ type: 'info', title: '更新下载完成', message: '点击确定重启获取最新内容', buttons: ['确定'] }) .then(() => { // 调用 quitAndInstall 来安装更新 autoUpdater.quitAndInstall() }) }) } export default updateInit