我希望我的应用程序在给定时间触发事件。目前我正在使用AlarmManager。但是如果用户的手机重新启动,或者用户使用任务杀手或使用 android 任务管理器结束应用程序,这将丢失。
那么最好的方法是什么。我是否应该只使用警报并在服务中重复设置它,以便在删除时立即恢复?
我希望我的应用程序在给定时间触发事件。目前我正在使用AlarmManager。但是如果用户的手机重新启动,或者用户使用任务杀手或使用 android 任务管理器结束应用程序,这将丢失。
那么最好的方法是什么。我是否应该只使用警报并在服务中重复设置它,以便在删除时立即恢复?
您可以在启动完成时使用唤醒警报服务,以便在重新启动后重新安排所有任务。您可以将警报 ID 和详细信息存储在数据库中。
对于您需要的东西可能有点过分,但请查看 CommonWare 的 WakefulIntentService: https ://github.com/commonsguy/cwac-wakeful
即使您不想在触发警报时启动整个 IntentService,他的代码也应该让您了解如何在设备重新启动时保持警报。