为了分析冷启动,我们需要抓取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文章来源:https://uudwc.com/A/Oq40J
文章来源地址https://uudwc.com/A/Oq40J