-
1)、查看自设备上次充电以来各种汇总统计信息,而且可以选择对应的 App 查看详细信息。
-
2)、可视化展示指标:
-
耗电比例。
-
执行时间、次数。
-
3)、仅适合线下使用。
安装
-
1)、安装 Docker
-
2)、docker – run -p:9999 gcr.io/android-battery-historian/stable:3.0 --port 9999 (需要翻墙)
导出电量信息
-
1)、使用 batterystats 命令重置手机电量:adb shell dumpsys batterystats --reset
-
2)、使用 batterystats 命令获取电池数据权限并开启记录全面的电量信息:adb shell dumpsys batterystats --enable full-wake-history
*
3)、测试完成后,使用 bugreport 导出电量信息:
-
7.0和7.0以后:adb bugreport bugreport.zip
-
6.0和6.0之前:adb bugreport > bugreport.txt
-
通过 historian 图形化展示结果:python historian.py -a bugreport.txt > battery.html
上传分析
- 1)、打开 http://localhost:
如果打不开,可以使用备用网站 https://bathist.ef.lc/
- 2)、上传 bugreport 文件,点 Submit 提交即可。
Battery Historian 数据分析
Hitorian V2 — 电量统计图表
Add Metrics
在 Add Metrics 中我们可以增加更多的测量项。
CPU running
如果一直处于 running,则表明电量消耗比较高。
JobScheduler
选中 Job Scheduler 的某一个工作时间片,我们可以查看具体的 发生的时间、耗时以及次数,最重要的是它统计出来了是哪一个进程在使用这个 JobScheduler。
App Selection
-
1)、选择要分析电量的指定 App。
-
2)、点击右边区域的 System Stats 一栏可以在下方查看各个系统组件的电量百分比消耗详情,例如 Userspace Wakelocks。
主入口处的 Switch to Bugreport Comparison
选择多个文件进行上传对比。
1)、耗电场景测试
-
复杂计算。
-
音视频播放。
2)、传感器相关
-
使用时长
-
耗电量
-
发热
3)、后台静默测试
===============================================================
-
1)、「缺乏现场,无法复现」。
-
2)、「信息不全,难以定位」。
-
3)、「无法评估结果」。
在 App 开发中,经常会由于某个需求场景或 代码 bug 而导致大量耗电。
思考步骤
-
需要后台运行
-
长时间下载:DownloadManager
-
数据同步:SyncAdapter
-
本地任务:Jo