electron-builder 打包时无法下载github上文件处理

方法一
设置npmrc

electron-builder-binaries_mirror=https://npmmirror.com/mirrors/electron-builder-binaries/

方法二:

1、 从网站上下载相关文件
https://github.com/electron-userland/electron-builder-binaries/releases
2、 存放到系统的缓存库中
不同系统缓存资源目录如下

macOS: ~/Library/Caches/electron-builder
Linux: ~/.cache/electron-builder
windows: %LOCALAPPDATA%\electron-builder\cache

3、 详细结构

├── AppImage
│   └── AppImage-17-06-17-mac
├── AppImage-packages
│   └── 10.03.17
├── Squirrel.Windows
│   └── Squirrel.Windows-1.6.0.0
├── fpm
│   └── fpm-1.8.1-20150715-2.2.2
├── linux-tools
│   └── linux-tools-mac-10.12
├── nsis
│   └── nsis-3.0.1.13
│  └── nsis-resources-3.1.0
├── winCodeSign
│   └── winCodeSign-1.9.0
└── wine
    └── wine-2.0.1-mac-10.12

https://github.com/electron-userland/electron-builder/issues/1859

要使 Electron 应用自动更新,可以使用 electron-updater 模块。这个模块是 Electron 提供的一个官方模块,可以用来实现自动更新功能。 以下是实现自动更新的步骤: 1. 在你的应用程序中添加 electron-updater 模块。 ```javascript npm install --save electron-updater ``` 2. 在主进程中设置自动更新的配置。 ```javascript const { app, autoUpdater } = require('electron'); const server = 'https://your-deployment-url.com'; // 更新服务器地址 const feed = `${server}/update/${process.platform}/${app.getVersion()}`; autoUpdater.setFeedURL(feed); autoUpdater.on('update-downloaded', (event, releaseNotes, releaseName) => { // 收到更新下载完成的事件,需要用户确认安装 const dialogOpts = { type: 'info', buttons: ['安装', '稍后'], title: '应用有新的更新', message: process.platform === 'win32' ? releaseNotes : releaseName, detail: '安装后将重启应用程序' }; dialog.showMessageBox(dialogOpts).then((returnValue) => { if (returnValue.response === 0) { // 确认安装 setImmediate(() => autoUpdater.quitAndInstall()); } }); }); // 检查更新 app.on('ready', () => { autoUpdater.checkForUpdates(); }); ``` 3. 在打包应用添加自动更新的配置。 在 package.json 文件中添加以下内容: ```json "build": { "publish": [ { "provider": "generic", "url": "https://your-deployment-url.com/update/" } ] } ``` 这里的 `url` 指向含更新文件的服务器地址,`provider` 的值可以是 `generic`,也可以是其他选项(如 `github`、`s3` 等)。 4. 生成更新文件并上传到服务器。 最后,你需要在你的服务器上生成更新文件,并将其上传到指定的地址。更新文件可以是 `.dmg`、`.exe` 等格式的安装文件,也可以是 `.zip`、`.tar.gz` 等格式的压缩。 上传更新文件需要按照以下格式命名: - `appName-版本号-darwin-x64.dmg`(Mac OS X 版本) - `appName-版本号-win32-ia32.exe`(Windows 32 位版本) - `appName-版本号-win32-x64.exe`(Windows 64 位版本) 注意,这里的 `appName` 需要和你的应用程序名称一致,版本号需要和 `package.json` 文件中的版本号一致。 这样,当用户打开应用程序,它将自动检查更新,并在更新可用提示用户下载和安装更新。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值