Ubuntu搭建Battery Historian环境
Google官网下载
Docker + BatteryHistorian
GitHub - google/battery-historian: Battery Historian is a tool to analyze battery consumers using Android "bugreport" files.
Install | Docker Docs
1.安装Docker环境
1.1 步骤 1:删除任何现有的 Docker 包
sudo apt remove docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc
1.2 安装一些必要的软件包
sudo apt install ca-certificates curl gnupg lsb-release
1.3 添加 Docker 仓库的 GPG 密钥并将其添加到 sources.list
sudo install -m 0755 -d /etc/apt/keyrings
1.4 使用 curl 命令 下载并导入 Docker 的 GPG 密钥环:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
1.5 下载 GPG 密钥后,使用 chmod 命令更改文件权限,以便系统上的每个用户都可以读取 GPG 密钥
sudo chmod a+r /etc/apt/keyrings/docker.gpg
1.6 将 Docker 仓库添加到 sources.list.d 文件中
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
1.7 请更新系统仓库
sudo apt update
1.8 获取最新版本的 Docker 以及其他 Docker 组件和依赖项
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
1.9 查看Docker版本 docker -v
1.10 测试下Docker-sudo docker run hello-world
发送命令:sudo docker run hello-world
1.10.1 报错及其修复
Unable to find image 'hello-world:latest' locally docker: Error response from daemon: Get "https://registry-1.docker.io/v2/": dial tcp: lookup registry-1.docker.io on 127.0.0.53:53: read udp 127.0.0.1:57773->127.0.0.53:53: i/o timeout Run 'docker run --help' for more information
首先进入/etc/docker/daemon.json文件,sudo vim /etc/docker/daemon.json,添加如下内容
{
"registry-mirrors": ["https://mkoo7bej.mirror.aliyuncs.com",
"https://docker.m.daocloud.io",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://your_preferred_mirror",
"https://dockerhub.icu",
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc"
]
}
终端重新启动一下docker
sudo systemctl daemon-reload sudo systemctl restart docker
2.安装docker后就可以使用
BatteryHistorian
2.1 BatteryHistorian 安装
sudo docker run --name=battery_power -d -p 9999:9999 runcare/battery-historian
拉取镜像及运行 镜像一定要拉对,否则会出问题,由于谷歌ping不通,所以不能用
sudo docker run -p 9999:9999 gcr.io/android-battery-historian/stable:3.1 --port 9999
2.2 启动 BatteryHistorian
sudo docker start battery_power
3.浏览器开启BatteryHistorian
http://192.168.11.46:9999/
http://192.168.11.46:9999/ 这里的ip地址可以使用ifconfig查看
4.手机抓取BugReport日志
~$ adb bugreport
* daemon not running; starting now at tcp:5037
* daemon started successfully
/data/user_de/0/com.android.shell/files/bugreports/bugreport-MEGA_2_NEU-AP3A.240905.015.A2-2025-03-19-14-39-05.zip: 1 file pulled. 22.9 MB/s (7738205 bytes in 0.322s)
5.BugReport文件可视化解析
文件加载进去
最后点击Submit就好了哈