bootchart抓Android系统启动各阶段性能数据

最近在做Android系统启动优化,首要任务是找到启动过程中各阶段耗时点,进而有针对性地进行优化。主要用bootchart抓开机数据,本文主要记录下工具的使用方法。

1.抓开机数据

adb root adb shell 'touch /data/bootchart/enabled'

adb reboot

重启后,生成的文件位于机器的/data/bootchart下。

2.解析数据

2.1 安装解析工具

复制代码
sudo apt install python-is-python3  //如果已经安装了pyhton3,就不需要再次安装
cd ~/Documents   //任意一个文件夹都可以
git clone https://github.com/xrmx/bootchart.git
cd bootchart/pybootchartgui
mv main.py.in main.py

2.2 指定pybootchartgui.py的路径

到下载的bootchart代码目录里找到pybootchartgui.py,记下全路径, 在$ANDROID_BUILD_TOP/system/core/init/grab-bootchart.sh里指定pybootchartgui.py的全路径, 注意,python要用python3

2.3 解析数据

在android源码根目录执行如下命令即可

$ANDROID_BUILD_TOP/system/core/init/grab-bootchart.sh

解析后在当前目录生成一个bootchart.png 的文件,截取一部分如下:

3.恢复出厂怎么抓bootchart ?

恢复出厂时,想抓开机各阶段的数据该怎么抓。恢复出厂会把/data下的数据都清除掉,所有只有通过修改代码如下:

/system/core/init/bootchart.cpp

参考:https://source.android.com/docs/core/perf/boot-times#bootchart

相关推荐
百锦再15 分钟前
第21章 构建命令行工具
android·java·图像处理·python·计算机视觉·rust·django
skyhh2 小时前
Android Studio 最新版汉化
android·ide·android studio
路人甲ing..2 小时前
Android Studio 快速的制作一个可以在 手机上跑的app
android·java·linux·智能手机·android studio
携欢5 小时前
PortSwigger靶场之Web shell upload via path traversal靶场通关秘籍
android
消失的旧时光-194313 小时前
Android ADB指令大全详解
android·adb
ashcn200115 小时前
opengl 播放视频的android c++ 方案
android·c++ opengl es
abner.Li15 小时前
android 反编译
android
Digitally15 小时前
如何删除 realme 手机上的短信
android
2501_9160088915 小时前
提高 iOS 应用逆向难度的工程实践,多工具联动的全栈安全方案
android·安全·ios·小程序·uni-app·cocoa·iphone
沐怡旸15 小时前
【底层机制】Android图形渲染体系深度解析:VSync信号机制
android·面试