无法切换至Doze模式

问题描述 投票:0回答:5

我按照此android页面上的说明将android切换到doz模式来测试我的应用程序,我使用了真实设备和模拟器。但在这两种情况下,当我发出第二个命令一次或多次时,这是

adb shell dympsys deviceidle step

它只显示“Stepped: ACTIVE” 在发出命令之前,我也关闭/锁定了设备,但没有用。我想要我的应用程序在打瞌睡模式下的行为,但似乎没有任何效果,

我也尝试过

adb shell dumpsys deviceidle force-idle

但这给了我以下信息。

 Unable to go idle; not enabled

请指教。我正在使用 motorola Moto G 第二代 android 6.0,还使用模拟器 x86_64 位图像和 android studio 版本 1.5.1

android android-6.0-marshmallow
5个回答
71
投票

尝试使用

adb shell dumpsys deviceidle enable

这应该启用深度和轻度空闲模式,然后使用

adb shell dumpsys deviceidle force-idle

3
投票

它有时会表现不佳。当它发生在我身上时,我使用了命令

   adb shell dumpsys battery reset

这会耗尽你的电池。让它充电一段时间后,我使用了以下两个命令

   adb shell dumpsys battery unplug
   adb shell dumpsys deviceidle step

确保多次发出最后一个命令。让我知道这是否有效。


2
投票

试试这个:

  1. 断开并重新启动您的设备。
  2. 连接设备并从 Android Studio 启动应用程序,关闭屏幕。
  3. 在终端:
adb shell dumpsys battery unplug
adb shell dumpsys deviceidle force-idle

这对我有用。


2
投票

在模拟器中尝试这些空闲模式命令(您也可以在设备中使用它,但如果它在设备上不起作用(时钟定时器或其他原因,请在模拟器上尝试这些命令)

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

检查设备是否进入空闲模式或不尝试此命令

adb shell dumpsys deviceidle get deep

0
投票

我知道这已经很旧了,但是如果有待处理的警报,您就无法进入深度空闲状态。有些设备经过配置,即使在闹钟响前一小时你也不能打瞌睡。因此,请在较新的 Android 上尝试此操作(通过 root 或 adb):

sudo device_config put device_idle min_time_to_alarm 10000
或(在旧版 Android 上)
settings put global min_time_to_alarm 10000

© www.soinside.com 2019 - 2024. All rights reserved.