设置AlarmManager.RTC类型警报应该有什么行为?

时间:2012-03-11 08:58:36

标签: android alarmmanager

我正在尝试通过使用AlarmManager来配置我的小部件更新周期。我现在通过在我的onReceive()中实现AppWidgetProvider方法来实现这一点,onUpdate()当接收到我的警报广播时,它又调用AppWidgetProvider的adb shell dumpsys alarm方法。这似乎有效,但我仍在努力了解某些情况。

昨晚,我将闹钟配置为每小时更新一次并且不唤醒手机。从下面的RTC #1: Alarm{40b354b0 type 1 com.my.app} type=1 when=+59m40s6ms repeatInterval=3600000 count=1 operation=PendingIntent{40c11e70: PendingIntentRecord{40e2b290 com.my.app broadcastIntent}} 出来,我已经成功注册了一个RTC警报,每小时执行一次:

onReceive()

无论如何,我拔下手机,关掉屏幕然后上床睡觉。在我的count=1方法中,我将日志消息输出到文件以确保我捕获正在发生的事情。今天早上我看了一下日志,发现我的onRecieve()方法每小时都会被触发。它从来没有睡过一个警报。

为什么会这样?虽然我认为其可能的其他过程或警报正在唤醒我的手机,但似乎很可疑。任何人都可以提供任何信息或建议吗?

最后,有人知道{{1}}在上面的输出中意味着什么吗?

1 个答案:

答案 0 :(得分:0)

已在

处回答

Allowing the phone to sleep while using RTC alarm on Android

并且是一个常见问题。

我不知道count = 1意味着什么。