【问题标题】:Doze mode and App Standby打盹模式和应用待机
【发布时间】:2015-07-10 09:57:49
【问题描述】:

我如何在我的应用中知道手机是否处于打盹模式或我的应用是否处于待机模式?

我也可以通过订阅的方式知道吗?

【问题讨论】:

  • 我在 Android M Preview 文档中找到了答案。 PowerManager isDeviceIdleMode() 也通过广播 ACTION_DEVICE_IDLE_MODE_CHANGED
  • 这是空闲模式。如何识别应用的待机模式?
  • 我没有测试它,但理论上打盹和应用待机模式都会导致“空闲”状态。需要使用当前的 Android M Preview 3 进行检查...文档可能会更清楚。

标签: android android-6.0-marshmallow


【解决方案1】:

App Standby(您的应用转到 sleep 因为它很孤独)和 Doze(系统去的地方 睡觉,因为用户有生命)。

Doze 仅在您的设备保持静止时起作用。如果你拿起它或唤醒屏幕,打盹模式将被禁用,定时器 重置。当手机放在口袋里时它永远不会打开 除非你坐着不动。打瞌睡只是让你的手机 在桌子或桌子上睡着时烧坏电池 什么的。

进入待机的应用会失去所有网络访问权限及其所有 后台同步作业被暂停。这些限制是暂时的 当你的手机插上电源时抬起来,每天几分钟 或两个。这使暂停的应用程序有机会运行任何待处理的同步 作业,但不允许它们继续运行。高优先级 推送通知还可以将应用从待机状态唤醒一段时间 时间短。

注意:Google 还指出,应用无法接受 触发通知只是为了免于应用待机。这 这种行为可能会导致应用被 Play 商店禁止。

有关测试打盹和应用待机的更多详细信息,请访问此链接:https://developer.android.com/training/monitoring-device-state/doze-standby.html

谢谢!

【讨论】:

  • 你能给我这个声明的来源吗 -> 谷歌还指出,应用程序触发通知只是为了保持免于应用程序待机是不可接受的。这种行为可能会导致应用被 Play 商店禁止。
【解决方案2】:

您无需执行任何操作即可管理待机模式。您只需要像往常一样管理您的生命周期。一天中的某个时间会恢复您的应用(这样您就可以同步数据并恢复延迟的工作),但通知和警报总是会让您的应用退出待机状态。

看看这个:https://plus.google.com/+AndroidDevelopers/posts/76eh5MaJaXj?linkId=18331776

【讨论】:

  • 如果你让你的应用程序设备管理员那么它不会stnadby
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-24
相关资源
最近更新 更多