electron-vue实现自动更新版本的另一类方法

首次使用electron-vue实现桌面应用,其中遇到n多的坑,一次次的从坑中爬起再跌下再爬起。。。

1.实现版本的自动更新:

首先想到的是autoUpdater,就按着百度的方法(完全没有问题)比葫芦画瓢的实现了,但由于打包的是合在一起打包的,有些参数可能没有,另外就是我们的下载的连接是按照登录的服务器地址(也就是不是固定的地址),诸多不便,于是放弃这种方式;

于是乎,便使用以下方法

// 在主进程中.

const {BrowserWindow} = require('electron')
let win = new BrowserWindow() win.webContents.session.on('will-download', (event, item, webContents) => {
// 设置保存路径,使Electron不提示保存对话框。
item.setSavePath('C:\\Users\\' + require('os').userInfo().username + '\\Downloads\\' + item.getFilename())
item.on('updated', (event, state) => {
if (state === 'interrupted') { console.log('Download is interrupted but can be resumed') }
else if (state === 'progressing') {
if (item.isPaused()) { console.log('Download is paused') }
else { console.log(`Received bytes: ${item.getReceivedBytes()}`) } } })
item.once('done', (event, state) => {
if (state === 'completed') { console.log('Download successfully') }
else { console.log(`Download failed: ${state}`) } }) })

 

首先下载服务器上的新版本,然后执行 shell.openItem('下载保存的路径')

按道理来讲,就能打开刚才下载的新版本去安装了,然并卵。。。。

下载的链接如果是"http://"+ip或者“https://”+域名都是没有问题,但就是这个“https://”+ip的事情比较多,那个什么安全证书的问题,总是走下载中断那一步,我寻寻觅觅一大圈还是一脸懵逼,突然一个同事提醒我了是这么回事儿,我才恍然大悟,那就找方法解决呗,脑残的我又跑偏了,我只在乎https和http的区别了,殊不知,electron中,人家有那种专门去掉限制的参数,苍天呐,这一天下来,我都干了点啥。。。。

不说了,贴方法喽方法

 

 

好了老铁们,终于over了

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值