electron 大佬进

2022-08-24 15:45:39 +08:00
 lieyan

我想问问各位大佬,这种情况的 electron 还有机会自动更新吗? 已经把打包好的程序安装在了客户电脑上,我要如何做才能让之前的版本更新?

// 省略上面的 import 代码...


function createWindow() {
  // 创建浏览器窗口。
  win = new BrowserWindow({
    title: appTitle,
    width: 1500,
    height: 800,
    center: true,
    icon: icon,
    show: true,
    fullscreenable: true,
    webPreferences: {
      preload: path.join(__dirname, 'preload.js'),
    }
  });

  ipcMain.on('goBack', (e) => {
    win.webContents.goBack();
  });

  ipcMain.on('goForward', (e) => {
    win.webContents.goForward();
  });

  ipcMain.on('reload', (e) => {
    win.webContents.reload();
  });

  ipcMain.on('goHome', (e) => {
    win.webContents.loadURL('https://xxx.com/home')
  });

  Menu.setApplicationMenu(new Menu());

  win.loadURL('https://xxx.com');
  
 }


// 省略下面的 ready 事件...
1180 次点击
所在节点    前端开发
8 条回复
maichael
2022-08-24 15:48:53 +08:00
没有,只能打包新版本重新安装
lieyan
2022-08-24 15:50:24 +08:00
@maichael 能不能再抢救一下 QAQ
murmur
2022-08-24 16:12:34 +08:00
win.loadURL('https://xxx.com');

这个不是域名么,还有机会提示用户更新给他下载新版
lieyan
2022-08-24 16:14:26 +08:00
@murmur 我也想到了这种方案,估计这是唯一的机会了。。。。
但始终不能实现无感知的自动更新
mxT52CRuqR6o5
2022-08-24 16:17:42 +08:00
自动下载新版安装包,关闭的时候静默安装,就像 vscode 一样
lieyan
2022-08-24 16:33:47 +08:00
@mxT52CRuqR6o5 问题是怎么弄啊?从域名加载也的页面不具备执行原生 api 的条件
mxT52CRuqR6o5
2022-08-24 16:35:54 +08:00
@lieyan 哦哦,那是不行,你得先在 main process 提供更新能力
scofieldpeng
2022-08-24 21:16:12 +08:00
你这个在 renderer 里 关掉了 node 的支持,否则你还可以悄悄升级下的,现在只能提示他升级了,别无他法

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/875075

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX