例如,如果我们安排一个不精确的重复警报AlarmManager.setInexactRepeating
每隔一小时触发一次,如果手机待机 4 小时然后被唤醒,会发生什么情况?系统是连续发出 4 个警报PendingIntent
还是只发出一个警报?
编辑:更加注意阅读文档,set(int, long, android.app.PendingIntent)
方法文档说:警报意图交付时带有一个称为 int 类型的额外数据,该数据Intent.EXTRA_ALARM_COUNT
表明有多少过去的警报事件已累积到此意图广播中。由于手机处于睡眠状态而导致未发送的重复警报在发送时的计数可能大于 1。
因此,当手机退出待机状态时,只会发送一个警报,其中包含未接警报的数量的额外意图。