1. 程式人生 > >Android啟動優化工具(一) Method Tracking

Android啟動優化工具(一) Method Tracking

前言

當我覺得app在啟動或者某處執行比較慢時,我需要開始我的優化工作了。大多數情況下,是因為在主執行緒執行了耗時的操作。
Android Studio 自帶的 Method Tracking 可以很直觀的看到某個時間段內哪個方法花了多少時間,真的屢試不爽!!!

Method Tracking 啟用

圖中有個小時鐘一樣的圖示,點一下開始跟蹤,再點一下結束跟蹤。
Method Tracking 啟用

Method Tracking Captures

結束跟蹤後,會出現結果,圖文並茂哈~ 如下圖。
Captures

上半部分是時間分配圖

橫向便是時間的流逝,
每一個被分隔開的水平條塊都是一個Method,水平條越長,表示執行時間越長。
正確使用姿勢

1.按住滑鼠左右拖動檢視不同區域
2.滑鼠上下滾動,放大縮小
3.滑鼠靜置在某個黃條上,會顯示佔用的時間如下圖
這裡寫圖片描述

wallclock Time可以理解成執行時間。
CPU Time 佔用CPU時間。

sleepInActivityCreate(),實際執行程式碼

private void sleepInActivityCreate() {
        SystemClock.sleep(1000);
    }

下半部分是時間統計表

Inclusive Time: 某函式佔用的CPU時間,包含內部呼叫其它函式的CPU時間。
Exclusive Time: 某函式佔用CPU時間,但不含內部呼叫其它函式所佔用的CPU時間。

表的使用,無外乎就是按時間升序降序,結果同樣一目瞭然。

我相信到這個程度的話,已經能夠找到耗時的地方了。