我正在编写一个在外部(在 example.com 上)托管的应用程序(例如 example_1.0.rpm),并且该应用程序会在每次启动时尝试在新版本可用时进行自我更新。
我的做法:
- 检查新版本并下载 example_2.0.rpm)
- 从应用程序调用“xdg-open example_2.0.rpm”并退出应用程序本身。
这种方法在 Ubuntu 16.04 上运行良好(最新更新截至 2016 年 6 月 7 日),但 Fedora 23 存在下面提到的问题。
问题:
- 这是最好的方法还是我可以使用 PackageKit 的某些功能?
- Fedora 23 (gnome-software 3.18.2) 上述方法存在问题,每当应用程序调用“xdg-open example_2.0.rpm”时,gnome-software 仅显示删除选项,但不显示升级选项。
答案1
最好的方法是使用 PackageKit。它可以在 Ubuntu 和 Fedora 上运行。
以下是如何使用它的示例: https://www.freedesktop.org/software/PackageKit/pk-faq.html#session-methods