【发布时间】:2012-07-08 18:12:00
【问题描述】:
我正在构建一个提醒应用程序,其中一次、每周、每月提醒,我们会在到期日期和时间通知用户提醒。用户可以随时更新提醒,以更新提醒时间或完全删除提醒。我已经想到了两种解决特定问题的方法。
- 每当用户设置提醒时,使用唯一 ID 相应地安排闹钟,并在用户更新或删除闹钟时更新或删除它。
- 由于我将提醒时间存储在数据库中,更好的方法是为最近的提醒安排警报。并让由警报触发的服务为下一个最近的提醒安排新警报。
第二种方法似乎很干净,但是我们如何解决由警报触发的服务在为下一次提醒安排新警报之前被系统杀死的情况?
编辑 看起来如果系统为了内存而杀死服务,它将重新创建服务。这是否意味着每次运行时依靠 Service 来安排警报是安全的?
编辑 2 我已经意识到,只要设备重新启动,Android 就会终止任何警报。这使得方法 2 成为更好的解决方案。我现在已经实现了。
【问题讨论】:
-
为什么不使用标准的 Android 日历提醒? stackoverflow.com/questions/5976098/…
-
这需要我不倾向于在应用程序中拥有的日历权限。当用户通过标准日历提醒选择通知时,是否可以有自定义行为?
标签: android alarmmanager android-alarms repeatingalarm