4

AlarmManager.setAndAllowWhileIdle()和有什么区别AlarmManager.setExactAndAllowWhileIdle()?这两者如何影响 Android 6.0 (Marshmallow) API 中引入的打盹模式?

4

1 回答 1

1

参考文档AlarmManager

注意:从 API 19 (KITKAT) 开始,警报传递是不精确的:操作系统将切换警报以最大程度地减少唤醒和电池使用。有新的 API 来支持需要严格交付保证的应用程序;参见 setWindow(int, long, long, PendingIntent) 和 setExact(int, long, PendingIntent)。targetSdkVersion 早于 API 19 的应用程序将继续看到以前的行为,即所有警报都在请求时准确传递。

实际上,您提到的两种方法都指定它们的行为类似于没有“AndAllowWhileIdle”(setsetExact)的对应方法。因此,其中一个将在准确的时间发出警报,而另一个将不准确。

于 2016-02-27T05:37:17.753 回答