【发布时间】:2012-06-28 09:34:11
【问题描述】:
我正在尝试使用AlarmManager 创建警报,即使设备被锁定,它也能正常工作。
但是当我使用 Settings -> Manege App -> MyApp -> Force Stop 杀死应用程序时,我的警报会破坏所有设置。
所以请告诉我在应用程序被强制停止后如何保存我的警报设置,它会在正常时间通知我。
提前谢谢...
【问题讨论】:
标签: android alarmmanager
我正在尝试使用AlarmManager 创建警报,即使设备被锁定,它也能正常工作。
但是当我使用 Settings -> Manege App -> MyApp -> Force Stop 杀死应用程序时,我的警报会破坏所有设置。
所以请告诉我在应用程序被强制停止后如何保存我的警报设置,它会在正常时间通知我。
提前谢谢...
【问题讨论】:
标签: android alarmmanager
但是当我使用 Settings -> Manege App -> MyApp 杀死应用程序时 -> 强制停止,然后我的闹钟会破坏所有设置。
AlaramManager 是始终运行的关键系统服务。如果您的应用程序安排了某些事情并被杀死,那么 AlarmManager 可能会再次启动应用程序(通过 PendingIntent)。
只需在 StackOverflow 上查看 this 答案即可。
【讨论】:
从 Android 3.1 开始,如果用户强制关闭您的应用程序,所有警报都将被取消,并且需要在您的代码中重新安排...
来自 Android 文档.... 请注意,系统将 FLAG_EXCLUDE_STOPPED_PACKAGES 添加到所有广播意图。这样做是为了防止来自后台服务的广播无意或不必要地启动已停止应用程序的组件。后台服务或应用程序可以通过将 FLAG_INCLUDE_STOPPED_PACKAGES 标志添加到应该允许激活停止的应用程序的广播意图来覆盖此行为。
应用程序在首次安装但尚未启动以及由用户手动停止时(在“管理应用程序”中)处于停止状态。
【讨论】: