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

 

posted on 2018-11-01 18:20  chasher  阅读(1969)  评论(0)    收藏  举报

导航