记一次electron自动更新实现过程

有关electron自动更新的文章有很多,网上几乎是一抓一大把,简单起见我选用的是electron-builder+electron-updater的方式,具体可以参考其他文章,不详述了。
这里主要记一下遇到的问题。
打包成exe安装完成,也在配置的地址放了新版的文件,但自动更新并没有发生。
调试过程:
1.autoUpdater.on(‘error’, function(error){}) 捕获到发生的错误
这里遇到一个问题,就是直接在回调函数中console.log失效了,于是通过win.webContents.send发送消息到渲染进程,再在渲染进程中监听并打印出error
2.查看打印出的error,提示whenReady函数不存在。
查看代码发现这是electron-updater中的代码,查找资料后发现whenReady函数是在electron3之后才被加入electron的。而当前项目的electron版本是1.x,实在是太老了……
3.于是升级electron到最新,重新打包,报错了……报错信息提示hid版本太老,看来是electron版本更新后hid跟不上了,于是再次升级、打包。
4.成功打包并实现自动更新。

你可能感兴趣的:(笔记心得)