android測試工具之systrace

2021-10-05 15:12:53 字數 1270 閱讀 6503

systrace工具特別適合用來分析ui的效能。

理論基礎:在開發應用時,通常使用60fps的幀率來檢測互動是否流暢,及16.66ms/幀

首先確認一點,android studio整合了所有android sdk下的工具。涉及android sdk的工具可以直接在android studio中安裝使用。android sdk

另外新的版本android studio取消了systrace的選單,需要到android的sdk目錄下開啟該工具。

mac中android studio的安裝目錄為:

android studio的資源庫安裝目錄:注意通過finder訪問這個目錄的時候,lounious下無library,而是乙個隱藏資料夾:資源庫

/users/lounious/library/android/sdk

lounious:~$     cd ./library/android/sdk/platform-tools/systrace/

lounious:~/library/android/sdk/platform-tools/systrace$ ls

notice upstream_revision catapult systrace.py

lounious:~/library/android/sdk/platform-tools/systrace$

快捷鍵:

w放大時間軸

s縮小時間軸

a右移時間軸

d左移時間軸

e 右移時間軸

圓形的顏色含義

通常是綠色的,顏色為黃色或者紅色的圓形表示該幀超過了維持平滑流暢的60幀每秒(fps)所需的16.6毫秒的執行時間限制。我們知道,fps>=60時,我們就不會覺得動畫卡頓。當fps=60時是個什麼概念呢?1000/60≈16.6,也就是說在大概16ms中,我們要進行一次螢幕的重新整理繪製。vsync是垂直同步的縮寫,每16ms會有乙個vsync訊號,那麼系統在每次拿到vsync訊號時重新整理螢幕,我們就不會覺得jank了(閃爍,可以理解為卡頓或者停頓)。

jank的型別

static const char* jank_type_names = {

"missed vsync", //錯過vsync

"high input latency", //高輸入延遲

"slow ui thread", //ui執行緒耗時

"slow bitmap uploads", //上傳耗時

"slow issue draw commands", //執行渲染命令耗時

android效能測試工具之dumpsys

該命令用於列印出當前系統資訊,預設列印出裝置中所有service的資訊,可以在命令後面加指定的service name.有兩種方法可以檢視service list 1.adb shell dumpsys 輸出資訊的開始部分就是所有執行的service,如下 currently running ser...

Android效能測試工具 Emmagee

emmagee是監控指定被測應用在使用過程中占用機器的cpu 記憶體 流量資源的效能測試小工具。支援sdk android2.2以及以上版本 emmagee功能介紹 1 檢測當前時間被測應用占用的cpu使用率以及總體cpu使用量 2 檢測當前時間被測應用占用的記憶體量,以及占用的總體記憶體百分比,剩...

測試工具之badboy

badboy這個工具本身用處不是很大,但有個錄製指令碼的功能,還是jmeter指令碼,所以針對這一點很多懶人就可以通過這個錄製指令碼,而不需要自己去編寫 上圖中已經標出了各功能區域,其實很簡單,稍微摸索下就能會簡單使用,下面簡單介紹下使用 1 錄製指令碼 點選紅色按鈕即開始錄製指令碼 4 完成以後,...