安卓ADB - 如何将模拟器设置为交流电源

3
为了测试Doze和待机模式,我正在尝试使用ADB和API 23模拟器来更改电池电量并设置为AC等。但是当我运行以下bash命令时:
adb shell dumpsys battery set level [95]

我收到了以下错误信息:

Bad value: [95]

另外,当我运行时:
adb shell dumpsys battery set [ac]

我收到了以下错误信息:
Dump current battery state, or:
  set [ac|usb|wireless|status|level|invalid] <value>
  unplug
  reset

我假设意味着找不到ac命令。我该如何更改模拟器为ac并更新电池电量?
更新:有一个命令adb shell dumpsys battery unplug可以拔掉模拟器,所以难道没有插入交流电源的命令吗?

1
你应该排除方括号。 - MatF
文档还描述了测试它的略微不同的步骤:http://developer.android.com/training/monitoring-device-state/doze-standby.html#testing_doze_and_app_standby - Sergey Glotov
我想要一种模拟插入设备的方法。我尝试过不带方括号,但结果相同。 - j2emanue
2个回答

9

有一个命令 adb shell dumpsys battery unplug 可以拔掉仿真器电源,那么难道没有一个命令可以连接交流电源吗?

是的,命令如下:

adb shell dumpsys battery set ac 1

为了改变电池的电量,您可以使用以下命令:

adb shell dumpsys battery set level 42

adb shell dumpsys battery set ac 0 关闭交流电。正是我所需要的,谢谢。当处于ac 1时,Doze模式应完全禁用。 - j2emanue

1
如果您想测试Doze功能,我建议您直接从开发者网站这里尝试相关命令。
循环Doze模式的命令如下:
$ adb shell dumpsys battery unplug
$ adb shell dumpsys deviceidle step
$ adb shell dumpsys deviceidle -h

针对测试应用待机:

强制将您的应用置于应用待机模式:

$ adb shell dumpsys battery unplug
$ adb shell am set-inactive <packageName> true

模拟唤醒您的应用程序:

$ adb shell am set-inactive <packageName> false
$ adb shell am get-inactive <packageName>

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