Android手机耗电量测试_使用adb shell dumpsys batterystats
简单介绍了耗电量测试目的、方法、及测试流程。比较粗浅。
耗电量测试目的:
在anrdoid系统中,不恰当的使用wakelock锁、GPS定位等功能将产生大量的电量消耗
一般是用平均电流来衡量电量消耗速度。(电池生产厂家一般都采用mAh来标记电池容量大小,平均电流越小,说明设备使用时间就越长)
应用开发过程中由于API的错误使用,导致CPU一直工作无法休眠,将消耗大量的电量。
电量测试的目的就是要测试出这种可能出现的场景,解决因错误使用API、网络操作处理不合理或者代码编写不规范等导致异常耗电的情况。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
使用adb shell dumpsys batterystats测试耗电量
adb shell dumpsys batterystats android系统自带的adb调试命令,可用来获取电量信息
命令获取的结果分2部分,一部分是系统整体耗电信息,另外一部分是各个进程的耗电信息
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
测试流程
1、手机连接电脑,打开电池数据的获取以及重置,清除干扰的数据
adb shell dumpsys batterystats --enable full-wake-history
adb shell dumpsys batterystats --reset
2、手机断开电脑。进行一定时间的操作,使用app
3、重新连接电脑,导出日志
adb shell dumpsys batterystats > batterystats.txt
adb shell dumpsys batterystats > com.example.android.sunshine.app > batterystats.txt
4、提取日志数据
确定app包名
通过包名确定UID
提取该UID相关日志
提取该UID使用的电量,*mAh
----------------------------------------------------------------------------------------------------------------------------------------------------------------
日志关键字含义
battery_level
电量,可以看出电量的变化
plugged
充电状态,是否进行了充电
screen
屏幕是否点亮,睡眠状态和点亮状态下电量的使用信息
top
当前时刻哪个app处于最上层,就是当前手机运行的app,用来判断某个app对手机电量的影响,这样也能判断出该app的耗电量信息
wake_lock*
wake_lock 该属性是记录wake_lock模块的工作时间。是否有停止的时候等
running
界面的状态,主要判断是否处于idle的状态。用来判断无操作状态下电量的消耗。
gps
gps是否开启
phone_in_call
是否进行通话
data_conn*
数据连接方式的改变,可以看出手机是使用2g,3g,4g还是wifi进行数据交换的。可以看出不同的连接方式对电量使用的影响。
phone_signal_strength
手机信号状态的改变。
这一栏记录手机信号的强弱变化图,依次来判断手机信号对电量的影响。
----------------------------------------------------------------------------------------------------------------------------------------------------------------
【以下:被测app的uid=u0a102,该app测试过程中使用的耗电量为3.06mAh】
0 (2) 073 top=u0a102:"com.shuwei.intelligentscene"
Estimated power use (mAh):
Capacity: 3000, Computed drain: 13.1, actual drain: 0.00000000
Screen: 5.70
Uid u0a102: 3.06
u0a102:
Wifi Running: 0ms (0.0%)
Full Wifi Lock: 0ms (0.0%)
Wifi Scan: 14s 733ms (13.0%)
Sensor GPS: 11s 261ms realtime (8 times)
Foreground activities: 1m 52s 906ms realtime (0 times)
Foreground for: 1m 52s 906ms
Proc com.shuwei.intelligentscene:
CPU: 18s 560ms usr + 3s 310ms krn ; 0ms fg
background batterystats:
u0a102:
Sensor GPS: (not used)
Proc com.shuwei.intelligentscene:
CPU: 18s 560ms usr + 3s 310ms krn ; 0ms fg
Estimated power use (mAh):
Capacity: 3000, Computed drain: 13.1, actual drain: 0.00000000
Screen: 5.70
Uid u0a102: 3.06
u0a275
Estimated power use
---------------------
作者:腾讯Bugly
来源:CSDN
原文:https://blog.csdn.net/Tencent_Bugly/article/details/46828213
---------------------
作者:陈李冠
来源:CSDN
原文:https://blog.csdn.net/chenliguan/article/details/53454590
浙公网安备 33010602011771号