如何分发nw.js应用程序的更新

时间:2017-03-01 19:52:37

标签: nw.js

随着即将推出的Chrome网上应用店应用程序的消亡,我已成功将我的应用程序转换为nw.js。我很惊讶它是多么容易以及它是如何第一次运行的。关于我遇到的唯一棘手的事情是如何在Mac上显示我的应用程序图标。

但是我有点担心应用更新。当用户使用我发布到我的网站下载的新版本更新nw.js应用程序时,是否有人知道持久性数据(索引数据库等)会发生什么?

此外,如果有人可以帮助我如何实现自动更新。我的意思是这里的全部作品。检查更新需要什么代码,我需要编写什么代码来提供更新,安装更新需要什么代码。 Chrome为我做了所有这些,我对服务器端编码一无所知。

2 个答案:

答案 0 :(得分:0)

对于mac,有一个mac商店支持: http://docs.nwjs.io/en/latest/For%20Users/Advanced/Support%20for%20Mac%20App%20Store/

IndexedDb,localstorage等将一直存在,直到应用名称不会更改。

自动更新:
正在进行自动更新程序的拉取请求。 https://github.com/nwjs/nw.js/pull/5722
到那时,自动更新的最简单方法您的应用程序代码是在Web上托管您的应用程序代码并使用nw.js打开网页。 如果你想自动更新nw.js本身,那么你必须为它提供一个安装程序,并告诉用户下载并运行安装程序,如果有新的更新。

答案 1 :(得分:0)

文档(http://docs.nwjs.io/en/latest/For%20Users/Advanced/Autoupdates/#autoupdates)推荐node-webkit-updater和nwjs-autoupdater。其中node-webkit-updater是最老的解决方案,不再维护。它也有缺陷(例如通过未签名的解压缩和系统特定的应用程序解压缩) 至于第二个(nwjs-autoupdater),我个人不喜欢安装golang只是让我的NWJS应用程序自动更新...

作为替代方案,可以考虑https://github.com/dsheiko/nw-autoupdater 它提供了一个API(比如node-webkit-updater,但使用async / await更清洁)来自定义一个应用程序中的自动更新流程,包括下载/安装进度

相关问题