android BatteryHistorian使用
Batterystats 工具和 Battery Historian 脚本的基本用法和工作流程Batterystats 是包含在 Android 框架中的一种工具,用于收集设备上的电池数据。您可以使用 adb 将收集的电池数据转储到开发计算机,并创建一份可使用 Battery Historian 分析的报告
适合的场景:
显示进程从什么位置以及通过何种方式消耗电池电量。
识别系统为了延长电池续航时间可能会延迟甚至移除应用中的哪些任务
安装 Battery Historian
1.Docker安装好之后 运行
docker run -p :9999 gcr.io/android-battery-historian/stable:3.0 --port 9999
之后 浏览器访问http://localhost:55487
进入这个界面
Batterystats 采集数据
- 将移动设备连接到计算机
- 在终端窗口中,关闭正在运行的 adb 服务器adb kill-server
- 重启 adb 并检查是否有已连接的设备adb start-server adb devices
- 重置电池数据收集adb shell dumpsys batterystats --reset
- 设备始终会在后台收集 batterystats 和其他调试信息。重置操作会清除旧的电池收集数据。如果不重置,输出内容会超大
- 断开设备与计算机的连接,以便仅消耗设备电池的电量
- 使用您的应用并执行您想要获取数据的操作;例如,断开 WLAN 连接并将数据发送到云端
- 重新手机连接
- 确保您的手机已被识别: adb devices
- 转储所有电池数据。此过程可能需要一段时间: adb shell dumpsys batterystats > [path/]batterystats.txt 系统会使用可选路径参数在您指定的目录中创建 batterystats.txt 文件。如果您没有指定路径,则会在您的主目录中创建该文件
- 使用原始数据创建报告 在创建报告之前,可以使用monkey针对某个应用做测试
- adb shell monkey -p com.tencent.mm -v 1000 如果要保存在某个目录下,先进入此目录 cd /Users/Desktop/battery 对于搭载 Android 7.0 及更高版本的设备: adb bugreport bugreport.zip 对于搭载 Android 6.0 及更低版本的设备: adb bugreport bugreport.txt
错误报告可能需要几分钟才能完成。在完成之前,请勿断开设备连接或取消该进程 与上面的 batterystats.txt 一样,这些文件是系统使用可选的路径参数在您指定的目录中创建的。如果您没有指定路径,系统将在您的主目录中创建这些文件 导出的文件如下
将采集到的数据上传
打开浏览器输入 localhost:55487,点击上传,上传之后出现submit 提交按钮
点击提交后,进入电池耗量分析界面