【发布时间】:2011-05-17 13:07:00
【问题描述】:
我正在开发一个非公开的 Android 应用程序,即该应用程序不会在全球 Android 市场上提供。该应用程序将安装在有限数量的客户端上,例如通过使用 apk 文件。 如何在此应用中启用自动更新功能?
我看到了不同的潜在选择(我不知道这些在技术上是否难以实现,甚至无法实现,或者是否有任何可以重复使用的现有功能):
- 在每次启动时,应用程序都会测试是否存在新版本(通过请求服务器),如果存在则下载新的 apk 并将其自身替换为新版本。
- 使用(或开发?)一个独立的应用程序或服务来承担更新检查和替换过程。
- 使用(或开发?)具有自动更新选项的私人市场应用程序。此选项类似于第二个选项,但更通用:市场应用程序将连接到存储库,即它将处理任意数量的(私有)应用程序。
我更喜欢选项一,因为自动更新功能包含在需要较少开发工作的应用程序中。
【问题讨论】:
-
and replaces itself with the new version这需要root权限。可能会为此提供任何解决方案。我相信在默认的 android 固件中,用户需要交互才能安装应用程序。如果没有 root 或自定义固件,就无法模拟它。 -
当然需要用户交互来批准更新 - 这也适用于市场上的所有产品。如果你真的想强制他们,旧版本可能会在检测到新版本可用后拒绝工作。
-
Google 应该提供从私有托管的 APK 自动更新应用程序的功能,因此每个人都不需要使用自定义更新程序重新发明轮子。
-
试试这个:github.com/commonsguy/cwac-updater 它相当容易使用。
-
有一个很好的服务可以帮助你的应用保持更新。看看push-link.com
标签: android google-play auto-update