【发布时间】:2011-11-25 11:46:33
【问题描述】:
我正在使用 Boot 接收器来触发 AlarmManager,以便它每分钟重复一次它的任务。我希望用户在应用程序中有选项来启用/禁用在每次重复 AlarmManager 时执行的操作。到目前为止,我只使用了一个蹩脚的解决方案。我在 SharedPreferences 中设置用户的首选项,并且在每次重复 AlarmManager 时,我都会在 SharedPreferences 中检查用户的首选项,并根据此首选项执行或忽略功能。
据我所知,目前还没有办法完全从 AlarmManager 自身内部销毁。但我可能错了。
另外,由于启动接收器是在 AndroidManifest.xml 中注册的,并且 BroadcastReceiver 仅在调用 onReceive 时才真正存在,因此可能无法获取对 AlarmManager 对象的引用,因此我可以使用 AlarmManager 从外部取消警报。取消。但我可能对这一切都错了。
所以我想问一下,如果我对这一切有误,或者是否有某种方法可以完全销毁/取消在启动时启动的 AlarmManager(从 AlaramManager 内部或外部,都没有关系)。有任何想法吗?提前致谢
【问题讨论】:
标签: android broadcastreceiver alarmmanager