我想创建一个真正简单的系统来检查我的电子应用程序中的更新,但我有一些疑问:
1-我如何将Electron应用打包到一个文件中,以便在Linux和Windows上执行? (两个位都可以在每台PC上运行)
2-如果可以将我的应用程序打包到一个文件中,我会将其存储在github或firebase上,并让该应用程序从下载URL下载文件,但是如何处理Windows上的“文件正在使用”错误? (如果Linux会给我这个错误,则IDK)
3-如果无法将我的应用打包到一个文件中,如何使它从URL下载整个应用?我不知道该怎么做
OBS:有时,我的应用程序必须在经过身份验证的代理服务器之后才能工作,并且必须连接到Internet,当我打开应用程序时,它会询问我是否在代理服务器后面,并且我在axios **中设置用户/密码**,因此自动更新系统必须使用经过身份验证的代理]
**
if(proxy) {
var config = {
url: 'google.com',
httpsAgent: new proxy('http://'+ user + ':' + .pass + '@' + host + ':' + port)
}
axios.request(config).then((res) => {
dosomething...
}).catch(err => {
console.log(err)
})
}
OBS_2:我是新手,所以请以最简单的方式帮助我
谢谢,祝你有美好的一天:D
您可以将应用程序打包到单个安装程序中,这对代理不敏感。
将您的应用打包到多个操作系统的安装程序中。您应该使用electron-builder
或electron-packager
。就我而言,我正在使用Electron-builder
您可以在此处检查示例Electron-builder
配置。Can't Add Icon To Electron App With Electron Builder。对于Linux和win,您应该在每个操作系统上打包应用程序。 (例如:您无法在win或mac以及与其他操作系统相同的版本上构建Linux应用安装程序。)要分发给用户,您应该执行eSign
您的应用,并且需要notarization
。
之后,您可以根据需要在GitHub或任何服务器上上传这些版本为(EX:AppNameV0.0.1)的安装程序。 auto-updater
这是EventEmitter
,以便您可以及时掌握更新的版本,并且应要求用户在可用的更新版本。更新部分内容或通过下载所需的整个安装程序进行更新。对于配置,请看一下。 https://www.electronjs.org/docs/api/auto-updater