Mal*_*ngh 6 android android-alarms android-6.0-marshmallow android-doze-and-standby
AlarmManager.setAndAllowWhileIdle()和 和有什么区别AlarmManager.setExactAndAllowWhileIdle()?它们对 Android 6.0 (Marshmallow) API 中引入的 Doze 模式有何影响?
请参阅以下文档AlarmManager:
注意:从 API 19 (KITKAT) 开始,警报传递不准确:操作系统将转移警报以最大程度地减少唤醒和电池使用。有新的API来支持需要严格交付保证的应用程序;请参阅 setWindow(int, long, long, PendingIntent) 和 setExact(int, long, PendingIntent)。targetSdkVersion 早于 API 19 的应用程序将继续看到以前的行为,即所有警报均在请求时准确传递。
事实上,您提到的两种方法都指定它们的行为与没有“AndAllowWhileIdle”(set和setExact)的对应方法类似。因此,其中一个会在准确的时间发出警报,而另一个则不准确。