AlarmManager.RTC 在唤醒时执行过多更新
我有一个通过 AlarmManager.RTC
每 30 分钟运行一次的服务。如果设备处于睡眠状态的时间足够长,足以使服务被调用两次(从而重新安排它们),那么当它醒来时,它会立即关闭服务两次。
AlarmManager
所需的行为是在唤醒时仅触发一个 Intent
。我怎样才能做到这一点?
I've got a service that I run every 30 minutes via AlarmManager.RTC
. If the device is asleep long enough for the service to be called twice (and thus have both of them be rescsheduled), when it wakes up, it fires off the service twice at once.
The desired behavior is for the AlarmManager
to just fire off one Intent
when it wakes up. How can I accomplish this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
试试这个:
Try this:
您是否取消了旧的警报管理器。如果没有办法,只需使用
PendingIntent
取消旧的看看这个 公共软件示例
Have you cancel the old one of Alarm Manager. If no means, just cancel the old one with
PendingIntent
Have a look at this Commonsware Example