稳定测试版
This commit is contained in:
30
main/preload.js
Normal file
30
main/preload.js
Normal file
@@ -0,0 +1,30 @@
|
||||
// preload.js
|
||||
const { contextBridge, ipcRenderer } = require('electron')
|
||||
|
||||
contextBridge.exposeInMainWorld('electronAPI', {
|
||||
selectApkFile: () => ipcRenderer.invoke('select-apk-file'),
|
||||
selectFile: () => ipcRenderer.invoke('select-file'),
|
||||
manualGc: () => ipcRenderer.invoke('manual-gc'),
|
||||
mqSend: (arg) => ipcRenderer.invoke('mq-send', arg),
|
||||
startMq: (tendid, id) => ipcRenderer.invoke('start-mq', tendid, id),
|
||||
fileExists: (url) => ipcRenderer.invoke('file-exists', url),
|
||||
isiproxy: (url) => ipcRenderer.invoke('isiproxy', url),
|
||||
})
|
||||
|
||||
contextBridge.exposeInMainWorld('appUpdater', {
|
||||
onAvailable: (cb) => ipcRenderer.on('update:available', (_e, info) => cb(info)),
|
||||
onProgress: (cb) => ipcRenderer.on('update:progress', (_e, p) => cb(p)),
|
||||
onDownloaded: (cb) => ipcRenderer.on('update:downloaded', (_e, info) => cb(info)),
|
||||
onError: (cb) => ipcRenderer.on('update:error', (_e, err) => cb(err)),
|
||||
// 主动触发
|
||||
checkNow: () => ipcRenderer.invoke('update:checkNow'),
|
||||
quitAndInstallNow: () => ipcRenderer.invoke('update:quitAndInstallNow'),
|
||||
});
|
||||
|
||||
// 页面卸载时清理监听(可选)
|
||||
window.addEventListener('unload', () => {
|
||||
ipcRenderer.removeAllListeners('update:available');
|
||||
ipcRenderer.removeAllListeners('update:progress');
|
||||
ipcRenderer.removeAllListeners('update:downloaded');
|
||||
ipcRenderer.removeAllListeners('update:error');
|
||||
});
|
||||
Reference in New Issue
Block a user