Android 抓取Trace 分析冷启动

为了分析冷启动,我们需要抓取Trace文件,来帮助我们分析问题

我们使用adb命令来抓取Trace文件

抓取Trace文件

adb shell atrace -b 25600 --async_start wm am gfx dalvik binder_lock binder_driver sched

停止抓取Trace文件

adb shell atrace --async_stop -o /data/local/tmp/boot_trace

(boot_trace 这个是Trace文件的文件名)

拉出Trace文件到电脑

adb pull /data/local/tmp/boot_trace

默认地址是C:Users_jiuren
在这里插入图片描述

之后分析Trace文件


可使用 http://ui.perfetto.dev/ 链接打开我们所拉出的Trace文件

在这里插入图片描述
打开所抓的Trace文件后 找出我们的进程号,之后就可以看进程创建的耗时了
在这里插入图片描述
找到进程号后,结合下图我们可以看到app冷启动大致的流程
PostFork —> ZygoteInit —>ActivityThreadMain —>Bind Application—>ActivityStart —>handleStartActivity —>ActivityResume

在这里插入图片描述