工作当中可能会需要测试android手机app的耗电量。今天就为大家来分享下如何使用adb命令行工具来统计电池使用信息。
使用Android adb命令实现wifi方式连接手机
因为要通过adb命令来监控手机的耗电量,所以建议通过wifi的方式来连接手机,而不是用usb线来连接手机设备。usb方式连接手机会自动给手机充电,这样会影响对耗电量的统计的准确性。通过下面方式来连接手机:
$ adb connect 10.1.217.238 #通过输入手机的ip地址来连接手机,ip地址可以在手机的wifi设置中找到
connected to 10.1.217.238:5555
如果看到connected字样就是证明连接成功了,可以通过下面adb命令来验证:
$ adb devices
List of devices attached
10.1.217.238:5555 device
04c5a5af52197902 device
注意如果你遇到下面的错误提示,请通过adb tcpip 5555命令来重启端口,具体命令代码如下:
$ adb connect 10.1.217.238
unable to connect to 10.1.217.238:5555: Connection refused
$ adb tcpip 5555 # 要先通过usb正确连接手机和电脑
restarting in TCP mode port: 5555
$ adb connect 10.1.217.238 #再次尝试连接手机
connected to 10.1.217.238:5555
成功通过wifi连接好手机后,就可以断开usb数据线连接了。
使用Android adb命令查询被测试app的uid
启动要测试的app后,再使用下面命令来查询被测应用的uid
$ adb shell ps | grep com.package.name # 输入被测试应用的包名称
u0_a138 30976 202 1738008 131660 ffffffff 00000000 S com.package.name
输出结果中第一个字段就是这个应用的uid,后面在查看电池统计报告中需要用到,但是注意要将字段中的下划线“_”去掉。例如u0_a138,替换为u0a138。
使用Android adb电池信息相关命令
下面命令可以查看设备的电池信息:
$ adb shell dumpsys battery
Current Battery Service state:
AC powered: false
USB powered: false
Wireless powered: false
status: 3
health: 2
present: true
level: 93 #剩余电量百分比
scale: 100
voltage: 4293
temperature: 350
technology: Li-ion
上面比较有用的是剩余电量百分比(level)
可以用下面命令来查看详细的电池使用信息:
$ adb shell dumpsys batterystats | less
因为输出的信息很多,所以使用less命令来查看。也可以将输出重定向到一个日志文件中。
$ adb shell dumpsys batterystats > batterystats_log.txt
通过下面命令来重置电池的统计信息:
$ adb shell dumpsys batterystats --reset
Battery stats reset.
首先通过上面提到的命令正确通过wifi连接手机和电脑,通过adb devices命令确认连接成功,查询到被测应用的uid,并且在测试开始前将电池的统计信息重置。 然后开始操作被测应用,例如,持续点击此应用10分钟,等时间到了之后,通过下面命令来保存电池信息到本地。
$ adb shell dumpsys batterystats > batterystats_log.txt
再通过文本编辑器打开刚刚保存的文件,并查看Estimated power use (mAh)相关信息,并查看对应uid的耗电信息。 这样就得到,10分钟前端正常使用app后,这个app的具体耗电情况啦。
Java热点新闻