Android启动时间优化

2020-12-30  本文已影响0人  西塔西塔

打印启动时间

首先要知道启动时间有多长,AndroidStudio中可以直接用logcat打印出来


image.png

好家伙,快10秒钟了,死了算了。

trace工具

在你想要跟踪的代码块前后分别插桩

Debug.startMethodTracing("sample");
Debug.stopMethodTracing();

生成的 .trace 文件会被保存在固定目录下,与 getExternalFilesDir() 返回的目录相同,即 /sdcard/Android/data/[YOUR_PACKAGE_NAME]/files 下。这里的命名可以自己随意。

使用 AS 查看

将 .trace 文件保存至电脑,直接拖入AS窗口,可直接打开该视图。


image.png

分析trace

上述图片很容易看出,主线程执行了5秒钟,从右边的分析窗口中可以一步步点下去,点到最后就可以看到具体某个方法耗时了或者等待了。再具体问题具体分析了。

注意点

如果出现trace文件无法被解析,实测在这段代码块中如果出现了异常被try catch住的话,虽然能够产生trace文件,但该文件并不能被解析,可以先分析是否存在异常,二分法排查你懂的。

上一篇 下一篇

猜你喜欢

热点阅读