- 使用Android studio自帶的profiler功能生成trace文件

- 分析profiler生成trace文件

- 有時需要分析app冷啟動時間耗時情況,單獨使用profiler功能生成trace文件就有點不好操作,可以借助代碼生成trace文件,然后再通過profiler功能進行分析
//開始trace
if (getContext().getPackageName().equals(Application.getProcessName())){//只trace主進程的
Debug.startMethodTracing("tracePath");
}
//停止trace,同一個進程有一個開始有一個結束才會生成trace文件,不然文件為空
if (getContext().getPackageName().equals(Application.getProcessName())){//只trace主進程的
Debug.stopMethodTracing();
}
//生成的文件在自己包名目錄下比如 /sdcard/Android/data/包名/files/tracePath.trace,或者有的手機是sdcard的根目錄下比如 /sdcard/tracePath.trace
//最后通過adb pull命令導出到自己電腦上,比如 adb pull xxx/tracePath.trace /電腦目錄
//1.super.attachBaseContext(context)方法之后調用getContext().getPackageName()才不會報錯,或者使用參數context比如context.getPackageName()
//2.需要有外部存儲卡讀寫權限,最好手動給夠存儲卡讀寫權限
//3.其實不用adb pull命令導出到自己電腦也可以,使用AndroidStudio的DeviceFileExplorer找到文件導出保存即可
- 使用Android studio的profile功能加載第三步代碼生成的trace文件進行分析,分析方法步驟和第2步一樣
