How can I know in my app if the phone is in Doze mode or if my app is in Standby mode?
Can I also know it by using some subscribing approach?
How can I know in my app if the phone is in Doze mode or if my app is in Standby mode?
Can I also know it by using some subscribing approach?
App Standby(您的应用程序因为孤独而进入睡眠状态)和Doze(因为用户有生命而系统进入睡眠状态)之间存在差异。
仅当您的设备保持静止时,打盹才有效。如果您拿起它或唤醒屏幕,则打盹模式会被停用,计时器会重置。当手机放在你的口袋里时,它永远不会打开,除非你坐着不动。打瞌睡只是让您的手机在桌子或桌子或其他东西上睡着时不会烧坏电池。
进入待机状态的应用程序将失去所有网络访问权限,并且其所有后台同步作业都将暂停。当您的手机插入电源时,这些限制会暂时解除,并且每天或每两天持续几分钟。这使暂停的应用程序有机会运行任何挂起的同步作业,但不允许它们继续运行。高优先级推送通知也将能够在短时间内将应用从待机状态唤醒。
注意:谷歌还指出,应用程序仅仅为了保持免于应用程序待机而触发通知是不可接受的。这种行为可能会导致应用被 Play 商店禁止。
有关测试Doze 和 App Standby的更多详细信息,请访问此链接:https ://developer.android.com/training/monitoring-device-state/doze-standby.html
谢谢!
您无需执行任何操作即可管理待机模式。您只需要像往常一样管理您的生命周期。一天中的某个时间会恢复您的应用程序(因此您可以同步数据并恢复延迟的工作),但通知和警报将始终使您的应用程序退出待机状态。
看看这个: https: //plus.google.com/+AndroidDevelopers/posts/76eh5MaJaXj?linkId=18331776