如何在Marshmallow上强制执行Doze模式?

8

所有的迹象都指向这两个命令:

adb shell dumpsys battery unplug
adb shell dumpsys deviceidle step

我按照运行Marshmallow正式版的Nexus 6手机上说明书进行操作。 我连接我的手机到测试机器上。 我设置了我想测试Doze的部分以进行测试。 我关闭我的屏幕。 在运行以上battery unplug命令后,我没有得到任何输出,所以我认为它有效,但每次运行deviceidle step时,输出总是Stepped to: ACTIVE

我不确定这是否重要,但我试图测试的特定功能是一个闹钟,我正在设置它以唤醒手机进入Doze。 当通过AlarmManager.setAlarmClock计划的PendingIntent触发时,我希望我的设备处于Doze中。 这可能会阻止我的设备进入Doze吗?


据报道,setAlarmClock() 会在事件触发之前一段时间内阻止 Doze 模式。 - CommonsWare
我注意到使用 setAlarmClock() 设置的闹钟不受Doze影响,但我还没有看到关于闹钟响起之前的“预唤醒”窗口的任何信息。是否有相关的链接? - Corey Ogburn
1
请返回翻译后的文本。 - CommonsWare
整整一小时。哇。虽然我相信这一点(没有任何讽刺的意思,实际上这似乎与我的测试结果相符),但如果谷歌有一些说明文档来证明这一点就更好了。 - Corey Ogburn
请查看这个答案 - Amit Vaghela
2个回答

19

使用以下命令强制让设备空闲。

拔掉电池

adb shell dumpsys battery unplug

您可以使用以下命令强制进入空闲状态

adb shell dumpsys deviceidle force-idle
or
adb shell dumpsys deviceidle enable

使用以下命令检查您是否处于Doze模式

adb shell dumpsys deviceidle enabled 

禁用模式:

adb shell dumpsys deviceidle disable 

重置设备电池状态:

adb shell dumpsys battery reset

0

Greenify应用程序具有实验性功能,可以在屏幕关闭时立即打开Doze模式。但是,您可能需要root权限才能使用此功能。Greenify可以在root和非root模式下运行。希望这可以帮到您。祝好运!


我正在使用ADB命令测试Doze模式,现在我意外地触发了你提到的这个功能:屏幕关闭时立即打开Doze模式。我想要移除它,该怎么做? - sebasira

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接