自动将Electron应用程序更新到特定(非最新)版本

时间:2019-11-30 10:54:39

标签: electron auto-update electron-updater

我需要为每个用户(或组)支持一个特殊的发行版,并且我希望每个用户仅在适合他时才自动更新到一个新的可用发行版(通过后端中的某种逻辑)。 我尝试使用电子构建器的electron-updater module和内置模块Electron's autoUpdater来做到这一点,但是似乎两者都总是在调用autoUpdater.checkForUpdates时获取最新版本。 / p>

我已经看到,当deploying my own update server时,其中一些(例如螺母)支持特定版本的下载URL。 如使用nuts

所述
  

检测到的平台的特定版本:http://download.myapp.com/download/1.1.0

但是似乎不支持使用autoUpdater在应用程序本身中请求特定版本。

总结所有这些:如何实现自动更新到特定版本而不是最新版本?

1 个答案:

答案 0 :(得分:0)

对我来说,解决方法是channels

  

appUpdater.channel(获取和设置)

     

定义自动更新程序要遵循的频道(请参阅   使用appUpdater.channel = 'beta'使用频道自动更新教程)   或使用currentChannel = appUpdater.channel获取当前频道。

请注意,如electron-builder autoUpdate documentation中所述,使用GitHub作为提供者(暂时)时不支持频道:

  

channel字符串-获取更新频道。 不适用于GitHub 。仅当先前已设置时,才从更新配置中不返回频道。

您可以将频道名称设置为任何名称,甚至可以动态地(如果需要)指示用户从该频道提取更新。

您还可以手动编辑{your-channel-name}.latest文件并添加参数,这些参数将帮助您确定当前的“要求更新”用户是否应使用特定版本(在{{ 1}}参数。)