【学习笔记】使用BatteryHistorian分析APP的耗电量

耗电量是衡量APP性能的一个重要参数,也和用户使用体验紧密相关;在这里记录测试APP耗电量数据的测试方法;

耗电量测试方法有:

1、硬件测试:借助功耗仪PowerMonitor、直流稳压电源Agilent 66319D等工具;(后面单独写一篇记录总结)

2、软件测试:PowerStat2.0、GT、BatteryHistorian;

这里先记录使用BatteryHistorian测试耗电量的方法;

1、获取bugreport

获取到bugreport后上传到BatteryHistorian进行分析;

需要注意的是,统计数据之前需要使用下面的命令将以前的累积数据清空:

取出保存耗电量数据:

【学习笔记】使用BatteryHistorian分析APP的耗电量

2、使用BatteryHistorian分析bugreport

以下是BatteryHistorian的两种安装方式:

Docker安装BatteryHistorian

源码编译安装BatteryHistorian

这里使用了源码编译安装BatteryHistorian的方法;

(1)启动BatteryHistorian–Git Bash输入命令启动

【学习笔记】使用BatteryHistorian分析APP的耗电量

(2)浏览器打开 http://localhost:9999/,选择bugreport后submit:

【学习笔记】使用BatteryHistorian分析APP的耗电量

(3)查看结果:

【学习笔记】使用BatteryHistorian分析APP的耗电量

3、数据分析

待补充

参数 说明
CPU runing cpu运行的状态
Kernel only uptime Kernel单独运行时间
Userspace wakelock 用户空间申请的锁
Screen 屏幕是否点亮
Battery level 电池当前电量
Temperature 电池温度
Top app 当前在内存中的应用,按内存占用率排序
Activity Manager Proc 活跃的用户进程
Crashes(logcat) 某个时间点出现crash的应用
Doze 是否进入doze模式 Device
active 和Doze相反
JobScheduler 异步作业调度
SyncManager 同步操作
Temp White List 电量优化白名单
Phone call 是否打电话
GPS 是否使用GPS
Network connectivity 网络连接状态(wifi、mobile是否连接)
Mobile signal strength 移动信号强度(greatgoodmoderatepoor)
Wifi scan 是否在扫描wifi信号
Wifi supplicant 是否有wifi请求
Wifi radio 是否正在通过wifi传输数据
Wifi signal strength wifi信号强度
Wifi running wifi组件是否在工作(未传输数据)
Wifi on 同上
Camera 相机是否在工作
Audio 音频子系统/td>
Foreground process 前台进程
Package install 是否在进行包安装
Package active 包管理在工作
Plugged 连接usb或者充电
Charging on 在充电
Logcat misc 是否在导出日志

 

 

 

 

4、耗电优化

待补充

改善软件耗电情况,从以下两方面入手:

1、手机系统层面—–应用软件运行的载体;Google和Rom厂商,在系统层面做一些策略,在保证应用的用户体验前提下,尽量限制应用的不必要耗电;

2、APP应用软件层面—–保证用户必要体验的前提下,尽可能减少不必要的操作;

参考书籍《移动APP性能评测与优化》

来源:池上花谷

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月9日
下一篇 2021年1月9日

相关推荐