Android 当应用程序被杀死时重新安排 alarmmanager 警报

Android reschedule alarmmanager alarm when app is killed

我开发了一个应用程序来安排多个本地通知来提醒用户做某事。当年的每个月都要发出通知

这些本地通知是使用 "AlarmManager" 安排的。在 "BroadcastReceiver" 的 OnRetrieve 中创建并引发通知。

在应用程序(由用户)终止或设备重启之前一切正常。

经过一些研究,我找到了在设备重启时重新安排警报/本地通知的解决方案 => 使用带有 "ActionBootCompleted" 作为意图过滤器的 BroadcastReceiver,然后在 "OnReceive" 中重新安排通知.

不幸的是,如果应用程序终止,我找不到合适的解决方案来重新安排警报/本地通知。

这种情况的最佳方法是什么?

尝试运行将此作为后台服务。当用户第一次打开应用程序时,调用服务 OnCreate()。确保该服务是 START_STICKY,这样它就不会停止,除非您明确告诉它。然后将您的 AlarmManagers 放入服务中。