分享下我近期研究, Electron 的自动更新机制

本文介绍了Electron在Mac ARM平台上的自动更新流程,包括安装包、latest-mac.yml和压缩包的作用。当版本不一致时,应用会下载新版本并自动更新。latest.yml文件的更新和指向至关重要,通常与GitHub发布配合,但自定义Nginx设置可能会影响更新过程。此知识应用于Postcat开源API管理工具。
摘要由CSDN通过智能技术生成

Electron的自动更新机制并不算复杂,但团队内似乎没有相关文档,正好笔者搞明白了,就简单说明一下,以MacOS的arm平台为例说明,具体代码可以参考Postcat的相关配置,本篇文章就不以具体代码举例了。

这里是以Mac arm平台为例,对于不同平台,包名不一样、更新文件名不一样、压缩包后缀不一样,但总体上都是围绕这三样东西。

配置了自动更新后,构建后,会有以下几个关键文件:

  • 安装包:Postcat-1.0.0-arm64.dmg

  • 更新/指引文件:latest-mac.yml

  • 压缩包:Postcat-1.0.0-arm64-mac.zip

三者是对应的,要顺利完成自动更新,三者缺一不可。当运行Postcat时,应用程序会尝试访问更新文件,从更新文件中获取最新的版本号和一个相对路径,相对路径指向.zip压缩包。

如果更新文件latest.yml中的最新版本号和当前运行的应用程序版本号一致,则不会再去访问压缩包。

如果不一致,则回去尝试访问压缩包,去将压缩包下载到本地,自动进行更新(更新过程是自动的,笔者也不了解内部运行的机理)。

待下一次重启应用时,运行的即是最新的应用程序,大致流程模型如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值