使用electron-builder在windows上打包并自动更新

本文详细介绍了如何使用electron-builder在Windows上进行应用打包,并探讨了两种自动更新方法:一种是结合grunt-electron-installer,另一种是利用electron-updater。通过实例步骤解析,展示了从设置代理加速下载到打包、自动更新的全过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用electron-builder在windows上打包并自动更新


心得:从一个小白开始独自一人了解electron这个玩具,实现其打包到自动更新,查阅各种资料,做了各种尝试,现在将自己经历过的一些东西写下来,供参考!

注意:文章适合了解electron是什么,知道如何简单打包的读者,文章中代码只是一种思路参考,并不完整,不能直接使用。

打包

尝试过用electron-packager和electron-builder打包,最终选择了electron-builder,原因后面会说;

关于网络,在使用electron-packager或者electron-builder打包的过程中,可能会下载electron包以及其它依赖,有些包和依赖可能服务器在国外,会很慢,所以需要设置代理,electron可以通过设置淘宝镜像快速下载ELECTRON_MIRROR="https://npm.taobao.org/mirrors/electron/"(windows下通过set设置该参数);

这有个有趣的事情,我通过代理下载的时候有个叫codeSign的包怎么都下不下来,总是提示timeout,后来我用笔记本连接手机热点,手机开启shadowsocks代理,通过蜂窝网络这种方式居然下载下来了,遇到类似问题都可以尝试;

electron-packager

简单用法:

具体用法参考官网: electron-packger
"scripts": {
    "package": "electron-packager ./ --overwrite -all"
}

注意事项:

  1. 直接这么打包会将node_modules文件夹全部打包进去,包会很大,需要自行进行忽略某些文件或者文件夹,因为作者使用webpack将代码打包,所以我是在webpack打包好的文件夹,独立建立了一个package.json文件,将需要的包和文件放进去,在该文件夹下打包;
  2. 注意 package.json 的额外字段 —— productName、author 和 description,虽然这几个字段并不是打包必备的,但它们会在 Windows 的 Squirrel 安装包(用于自动更新,后面会说)中使用到。

特点:

  1. 在macOS系统下,打的包是app文件(也就是平常通过dmg文件安装后的应用程序,拖到应用程序能直接使用),不能直接打包dmg文件;(不记得能不能打windows的包了,网上参考资料说不能打windows包);
  2. 在windows系统下,能打包免安装的包,类似于我们网上下载绿色版软件,直接点击exe文件就运行软件;不能直接打包exe安装文件;(能否打app文件自行探索,蛤)
  3. 在自动更新的时候支持electron自带的autoUpdatersquirrel的方式(squirrel在windows下需要自己安装某些文件);
electron-builder

简单用法:

具体用法参考官网: electron-builder
"build": {
    "appId": "com.xxx.app",
    "mac": {
      "target": ["dmg","zip"]
    },
    "win": {
      "target": ["nsis","zip"]
    }
},
"scripts": {
    "dist": "electron-builder -wm"
},
注意事项:参考electron-packager

特点:

  1. 在macOS系统和windows系统都可以到dmg和exe安装文件;
  2. windows可以使用nsis打包安装文件,具体配置可以参考官网相关配置;
  3. 几乎支持了所有平台的所有格式;
  4. 自动更新的时候,不支持squirrel.Windows的方式,并且不使用electron自带的autoUpdater,需要使用 electron-updater包;

自动更新(windows下)

这边不详细描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值