setAlarmClock和setExactAndAllowWhileIdle之间的区别

JF0*_*001 7 android

在此处的链接中提到以下内容(与API级别23中的打盹模式有关):

  • 如果需要设置在Doze中触发的警报,请使用setAndAllowWhileIdle()或setExactAndAllowWhileIdle().
  • 使用setAlarmClock()设置的警报继续正常启动 - 系统在警报触发前不久退出Doze.

关于打盹模式,setExactAndAllowWhileIdle和setAlarmClock有什么区别?

setAlarmClock是一个确切的警报吗?

https://developer.android.com/training/monitoring-device-state/doze-standby#testing_doze_and_app_standby

谢谢.Ĵ

zee*_*090 -2

是的setAlarmClock,与 相同setExactAndAllowWhileIdle。来自Android开发者文档关于setAlarmClock

由于此类警报的性质,类似于 setExactAndAllowWhileIdle(int, long, PendingIntent),即使系统处于低功耗空闲(又名打瞌睡)模式,这些警报也将被允许触发。

setAndAllowWhileIdle与此相同,set只是当设备处于打瞌睡模式时会触发它。如果setAndAllowWhileIdle在较短的时间间隔内设置了多个警报,系统可能会立即触发所有警报,而不是在几秒/分钟后逐个触发它们。来自文档:

在正常的系统操作下,它不会超过大约每分钟发送这些警报(此时将发送每个此类待处理警报);当处于低功耗空闲模式时,该持续时间可能会明显更长,例如 15 分钟。

  • 看看这里/sf/ask/2527756871/ Between-setexact-and-setalarmclock (2认同)