跨平台自动更新程序

时间:2010-12-27 16:38:14

标签: qt qt4 auto-update

我正在使用Qt来构建跨平台GUI应用程序(Windows和Mac)。我希望能够在有新补丁的情况下有效且自动地更新应用程序。

我看到了this帖子,让我看看WyBuild。它看起来很棒,可能最终用于Windows版本但是Mac呢?我可以选择哪些替代方案?

6 个答案:

答案 0 :(得分:4)

我刚刚开始根据自己的需要开发一个名为Fervor的基于Qt的autoupdater。你可以尝试一下,贡献也非常受欢迎。

答案 1 :(得分:2)

对于Mac,WebKit,Adium,Cyber​​duck等使用的最佳选择是Sparkle。它仅适用于Mac,但我认为原生在Mac上很重要。

答案 2 :(得分:1)

不熟悉WyBuild所以无法发表评论。 Sparkle是一个不错的选择,但海报更喜欢两个平台的单个应用程序。 BitRock InstallBuilder包含一个用Qt编写的autoupdater,可以独立使用(免责声明,我是原始的BitRock开发人员)。它是一个商业应用程序,但我们有免费的开源项目许可证。

答案 3 :(得分:1)

Updatenode似乎提供了一个真正的Qt跨平台解决方案。

它带有适用于Windows,Mac和Linux的预构建客户端。通过在线服务,您可以非常轻松地管理更新,并且能够查看应用程序使用情况的良好图表。

答案 4 :(得分:1)

这里有另外一种可能性:

使用Qt Installer Framework:它为Windows / Linux / Mac提供内置更新程序的安装程序。如果您需要一个示例 - Qt-Installation的MaintenanceTool使用框架。

要从中获取自动更新程序,您只需要:

  • 创建在线安装程序(只需查看文档,并不难)
  • 使用应用程序中的maintenancetool检查更新。
    • 使用我的QtAutoUpdater完成此手杖。去那里了解有关整个过程的更多信息
    • 如果有新的更新,则可以在更新程序模式下启动maintenancetool以安装更新
  • 更新在线存储库 - 您的更新已完成。

优点:

  • 1个工具中的安装​​程序和更新程序 - 这意味着您的工作量减少
  • 易于使用(有或没有QtAutoUpdater库)
  • Qt支持的所有桌面平台的跨平台
  • 安装程序本身是Qt原始

缺点:

  • 没有“原生”安装程序(即Windows上没有.msi或ubuntu上有.deb
  • 必须一起使用 - 如果要使用更新功能,则必须使用框架作为安装程序

答案 5 :(得分:0)

This may be obvious, but for Linux you can use the built in package manager. For example, apt-get, yum, pacman, or what have you.