背景
APP越来越大,功能越来越多,导致后台运行时耗电急速上升,使用官方推荐的Baterry-Historian进行分析
官方链接:https://github.com/google/battery-historian
准备工作
- Mac上先安装Docker
- Docker安装完成后,输入以下命令,开启Docker端口监听命令
docker run -p 8888:9999 gcr.io/android-battery-historian:2.1 --port 9999
其中8888就是本地端口号,如果本地没有gcr.io/android-battery-historian:2.1的话,就会从server开始下载
- 在浏览器中打开:localhost:8888则会看到如下界面,说明一切准备就绪
BatteryHistorian
收集数据
- 首先需要开启手机的电量记录
adb shell dumpsys batterystats --enable full-wake-history
- 接着在操作完成后,静置后台
- 静置后台一段时间后,清理在前台或者屏幕亮着的时候的耗电信息
adb shell dumpsys batterystats --reset
- 等30mins后或者整晚后,收集这段时间内系统耗电的信息,在read-only的文件系统中不可运行,必须在可写的文件系统中才会生成,生成会花费一点时间,需要稍等。
adb bugreport <zip_file>
- 最终在当前文件夹下会生成zip_file,其中的bugreport.txt就是我们所需要的耗电信息
PS:
在adb shell的Context下使用bugreport > bugreport.txt
命令会提示以下警告:
WARNING: flat bugreports are deprecated, use adb bugreport <zip_file> instead
网友评论