Battery Historian服务部署

1
2
3
4
docker search battery  
docker run --name=battery -d -p 9999:9999 bhaavan/battery-historian
# 如有代理
docker run -p port_number:9999 gcr.io/android-battery-historian/stable:3.0 --port 9999

浏览器打开:http://host:9999/

耗电统计是系统组件,伴随系统运行的整个过程,也就是说系统运行他就一直在统计。这个统计是基于软件层面实现的,不同的硬件模块配置了不同的参数,然后使用算法进行估算,power_profile文件的参数值OEM厂商必须测量并提供前实际值,所以不同的厂商是不一样的。另外获取统计报告的时候需要将统计重置,并断开usb连接(连接时充电影响统计有效性)

设备耗电报告获取分析

1
2
3
4
5
6
7
8
# 默认情况下,统计信息是在运行基础上维护的,Android也不记录特定于应用程序的用户空间wakelock转换的时间戳。如果您希望Historian在时间线上显示关于每个单独唤醒锁的详细信息,则应在开始实验之前使用以下命令启用完整唤醒锁报告(启用完全唤醒锁定报告,电池历史记录将在几个小时内溢出。使用此选项进行短时间测试(3-4小时))
adb shell dumpsys batterystats --enable full-wake-history
# 采集报告前将battery统计状态重置,重置命令结束后断开usb,操作app进行相应活动,测试结束后用获取报告命令导出统计文件包
adb shell dumpsys batterystats --reset
# 安卓7.0及以上
adb bugreport > bugreport.zip
# 安卓6.0及以下
adb bugreport > bugreport.txt

报告上传上述服务,可查看分析结果