我有一个需求,我需要唤醒非白名单应用程序的屏幕,以便在应用程序处于打ze模式时显示警报通知。
我已经遍历了android.developer.guide,我可以看到我们可以使用以下方法setAndAllowWhileIdle()和setExactAndAllowWhileIdle()来显示列入黑名单的应用的警报通知
参考链接:https://developer.android.com/training/monitoring-device-state/doze-standby.html#testing_doze
请问是否可以唤醒未列入白名单的应用程序的屏幕并显示警报通知?
答案 0 :(得分:0)
我看到我们可以使用以下方法setAndAllowWhileIdle()和setExactAndAllowWhileIdle()来显示列入黑名单的应用的警报通知
不完全正确,
setAndAllowWhileIdle()
和setExactAndAllowWhileIdle()
都为Doze restrictions提供了解决方案,将您的应用列入白名单,因为您可以看到here是处理打ze模式的另一种方式。
您应该使用上述方法之一实现一个简单的AlarmManager
,然后使用Test with Doze and App Standby来获得结果。
编辑:
根据setAndAllowWhileIdle和setExactAndAllowWhileIdle
...即使系统处于低功率空闲(也称为打ze睡)模式,也将允许执行此警报...
警报发出后,该应用还将被添加到系统的临时白名单中约10秒钟,以使该应用获得进一步的唤醒锁以完成其工作。