Tim*_*Tim 2 android adb android-6.0-marshmallow android-doze-and-standby android-doze
我必须测试我的应用程序在打盹模式下的行为方式.根据文档,我首先必须通过在终端中输入以下命令使设备认为它已被拔掉:
$ adb shell dumpsys battery unplug
Run Code Online (Sandbox Code Playgroud)
然而,没有任何反应,它记录:
找不到服务:电池
我该怎么办?
日志指出没有电池服务(这可能是设备特定的).
输入以下命令以查找现有的电池相关服务:
$ adb shell service list | grep battery
Run Code Online (Sandbox Code Playgroud)
它会产生这样的结果
$ adb shell service list | grep battery
88 batterymanager: [android.app.IBatteryService]
107 batterystats: [com.android.internal.app.IBatteryStats]
114 batteryproperties: [android.os.IBatteryPropertiesRegistrar]
Run Code Online (Sandbox Code Playgroud)
管理电池是有道理的,你应该使用电池管理器.
$ adb shell dumpsys batterymanager
Run Code Online (Sandbox Code Playgroud)
输出(如果插入usb充电)
Current Battery Service state:
(UPDATES STOPPED -- use 'reset' to restart)
AC powered: false
USB powered: true
Run Code Online (Sandbox Code Playgroud)
然后,当你输入
$ adb shell dumpsys batterymanager unplug
Run Code Online (Sandbox Code Playgroud)
并再次运行上一个命令,它输出
Current Battery Service state:
(UPDATES STOPPED -- use 'reset' to restart)
AC powered: false
USB powered: false
Run Code Online (Sandbox Code Playgroud)
这证明您应该使用batterymanager服务而不是电池.
| 归档时间: |
|
| 查看次数: |
3379 次 |
| 最近记录: |