>我有一个要求,我需要唤醒未列入白名单的应用程序的屏幕,以便在应用程序处于打瞌睡模式时显示警报通知。
我已经浏览了android.developer.guide,我可以看到我们可以使用以下方法setAndAllowWhileIdle()和setExactAndAllowWhileIdle()显示同时列出的应用程序的警报通知
参考链接: https://developer.android.com/training/monitoring-device-state/doze-standby.html#testing_doze
有人可以建议我是否可以唤醒非白名单应用程序的屏幕并显示警报通知吗?
我可以看到我们可以使用以下方法setAndAllowWhileIdle()和setExactAndAllowWhileIdle()显示同时列出的应用程序的警报通知
不完全正确,
setAndAllowWhileIdle()
和setExactAndAllowWhileIdle()
都为打瞌睡限制提供了解决方案,将您的应用程序列入白名单,如下所示是处理打瞌睡模式的另一种方法。
您应该使用上述方法之一实现一个简单的AlarmManager
,然后使用低电模式和应用程序待机进行测试,您将获得结果。
编辑:
根据 setAndAllowWhileIdle 和 setExactAndAllowWhileIdle
。即使系统处于低功耗空闲(又称打瞌睡)模式,也允许执行此警报......
当警报被调度时,该应用程序还将添加到系统的临时白名单中大约 10 秒,以允许该应用程序获取更多唤醒锁以完成其工作。