AlarmManager.setAndAllowWhileIdle()
和AlarmManager.setExactAndAllowWhileIdle()
之间有什么区别?这些如何影响Android 6.0(Marshmallow)API中引入的Doze模式?
答案 0 :(得分:0)
请参阅AlarmManager
的文档:
注意:从API 19开始(KITKAT)警报传递不准确:操作系统将移动警报以最小化唤醒和电池使用。有新的API支持需要严格交付保证的应用程序;请参阅setWindow(int,long,long,PendingIntent)和setExact(int,long,PendingIntent)。 targetSdkVersion早于API 19的应用程序将继续查看之前在请求时准确传递所有警报的行为。
实际上,您提到的两种方法都指明它们的行为与没有“AndAllowWhileIdle”(set
和setExact
)的对应物相同。因此,其中一个将在确切时间发出警报,而另一个则不准确。