0.1.2 • Published 3 years ago
@bugonly/electron-update-sdk v0.1.2
@bugonly/electron-update-sdk
基于 electron-updater 封装的更新服务组件。
安装
#yarn
yarn add @bugonly/electron-update-sdk
#npm
npm i @bugonly/electron-update-sdk使用
Electron 主进程
Electron 需要同时在主进程和预加载脚本中引入 SDK。
主进程引入:
import updateService from '@bugonly/electron-update-sdk/libs/main';
const mainWindow = createWindow('main', {
width: 1000,
height: 800,
webPreferences: {
preload: path.join(__dirname, 'preload.js')
}
});
// 接入 updateService
updateService.setup(mainWindow, {
// 获取更新信息的URL
feedUrl: 'https://xxx.com/xxx'
});预加载脚本引入:
import { contextBridge } from 'electron';
import updateServicePreload from '@bugonly/electron-update-sdk/libs/preload';
contextBridge.exposeInMainWorld(updateServicePreload.name, updateServicePreload.content);渲染进程
import { UpdateServiceRenderer } from '@bugonly/electron-update-sdk/libs/renderer';
const updateRenderer = new UpdateServiceRenderer({
// 是否使用 SDK 默认的UI提示,默认为 true,建议自定义
renderUi: false
});
// 检查更新
updateRenderer.checkUpdate(false);功能API
updateRenderer.checkUpdate(slient:boolean)
主动检查更新,入参 slient为true时,当检查中或没有更新时不显示UI提示。
updateRenderer.confirmDownload()
确认下载更新包,一般是在自定义UI中使用。
updateRenderer.confirmUpdate()
确认安装更新包,一般是在自定义UI中使用。
事件回调 API
可通过生命周期各阶段的事件回调执行自定义逻辑或者自定义UI提示(前提设置renderUi为false)。
updateRenderer.onCheckingUpdate(callback)
自定义回调:检测更新中
updateRenderer.onUpdateFail(callback)
自定义回调:更新失败
updateRenderer.onNoUpdate(callback)
自定义回调:没有更新版本
updateRenderer.onNeedUpdate(callback)
自定义回调:有新版本
此时可调用
updateRenderer.confirmDownload()下载更新包。
updateRenderer.onDownloading(callback)
自定义回调:更新包下载中
updateRenderer.onDownloadSuccess(callback)
自定义回调:更新包下载完成
此时可调用
updateRenderer.confirmUpdate()安装更行包
默认提示UI
检查更新

有可用更新

下载中

下载成功

错误提示
