android - 市场更新后自动重启应用程序

标签 android service google-play auto-update

每当我在市场上发布我的应用程序的新版本时,如果用户启用了“自动更新”选项,该应用程序将自动更新。

该应用程序包含一个持续运行的服务。但是当自动更新发生时,旧的正在运行的应用程序被杀死,但新的应用程序没有启动。 由于更新对用户来说几乎是透明的,因此应用的服务应该在更新后自动重新启动是有道理的,这样服务几乎不会中断。

用市场上的真实更新来测试这个有点困难,所以我使用以下两个 adb 命令来模拟这个更新过程。 安装第一个版本:

adb install oldversion.apk

自动更新:

adb install -r newversion.apk

在我运行第二个命令后,应用程序成功更新,但它已停止并且没有重新启动。

如何让新版本的服务自动启动?

最佳答案

如果您的应用在 API 12 或更高版本上运行,我建议注册一个 BroadcastReceiver 来监听 android.intent.action.MY_PACKAGE_REPLACED .

此 Intent 仅在您的应用程序获得更新时触发。

关于android - 市场更新后自动重启应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15572154/

相关文章:

android - 方向更改时出现内存不足错误

Android:停止、解除绑定(bind)和完全删除 NotificationListenerService 的正确方法

Android 服务 : Bind on demand vs. 在#onCreate() 上绑定(bind)

android - 为什么无法将 apk 上传到 google play console?

google-play - 应用程序商店或 Play 商店是否允许仅对我的网站具有 WebView 的应用程序?

java - Android Studio 数据绑定(bind)错误,无法解析符号

android - Google map fragment 填充

c# - 如何从 Services.msc 中删除禁用的服务

Android perimision "user' s private information", "your personal information", "read sensitive log data"

android - Android 中阿拉伯文本中的阿拉伯数字