应用更新后,Android AlarmManager会继续运行吗?

bre*_*777 9 android alarmmanager android-alarms repeatingalarm

从我所看到的情况来看,如果你安排一个无限期重复的警报,它将不会停止运行,直到你重启设备或卸载应用程序.

我想知道,在应用更新的情况下,这些行为如何表现?例如,您从Play商店下载该应用程序的版本1,然后运行该应用程序,此警报开始运行.然后发布版本2并执行自动或手动更新.此警报是否仍在继续运行(或者您是否必须再次启动应用程序才能启动警报)?

在我的场景中,我确实需要这样做,所以我希望答案是它会继续运行.但是,如果您在版本2中更改了警报代码,会发生什么?

Hex*_*ugs 13

答案似乎是,在AlarmManager大多数Android版本的应用更新后,警报会继续运行.当然适用于Android 2.3.2或更高版本.将UninstallReceiverAlarmManagerService已更新,以处理包更新而不杀死报警-看到这里那里是明确的评论:

//这个包正在更新; 不要杀死它的警报.

处理此问题的代码不在2.0.0 AlarmManagerService.UninstallReceiver中

我意识到这可能是帮助OP的3年来最好的部分,但希望它可以帮助其他人.


Mol*_*Ice 1

这样的事情。

本质上,如果每次应用程序启动时都使用相同的 ID 重新运行 PendingIntent,则如果它正在运行,则不会发生任何事情;如果它没有运行,它将开始运行。

这样您就不必担心更新后丢失闹钟。