adb獲取Android性能數據

環境:Android測試環境shell

搭建Android測試環境:windows

一、下載AndroidSDK;網絡

二、配置環境變量;app

(1)、ANDROID_HOMEless

(2)、ANDROID_HOME-TOOLStcp

(3)、ANDROID_HOME-PALTFORM-TOOLS性能

三、Android底層Java開發,如需運行安卓遠程調試橋(adb),需Java運行環境;測試

四、下載JAVA;PS:下載JDK和JRE都行,JDK爲JAVA開發環境,JRE爲JAVA運行環境,開發環境中包含運行環境;優化

五、配置環境變量JAVA_HOME;ui

六、驗證Java -version;出現版本號便可

PS:Android手機如與windowS電腦鏈接需安裝手機驅動;Mac自動監測安裝

移動端性能測試指標:

一、啓動時間;(1)、冷啓動     (2)、熱啓動

冷啓動:應用的第一次啓動,這個時候應用程序的進程是沒有建立的

 熱啓動:應用非第一次啓動,若是按back鍵,並無將應用進程殺掉,熱啓動沒有了初始化的過程

adb命令:adb shell am start -W  mainActivity        能夠看到ThisTime    TotalTime    WaitTime

ThisTime表示一連串啓動Activity的最後一個Activity的啓動耗時;

TotalTime表示新應用啓動的耗時,包括新進程的啓動和Activity的啓動,但不包括前一個應用Activity pause的耗時;

WaitTime就是總的耗時,包括前一個應用Activity pause的時間和新應用啓動的時間;

最後總結一下,若是隻關心某個應用自身啓動耗時,參考TotalTime;若是關心繫統啓動應用耗時,參考WaitTime;若是關心應用有界面Activity啓動耗時,參考ThisTime

PS:am全名activity manager,你能使用am去模擬更重系統的行爲

       pm全名package manager,你能使用pm命令去模擬Android行爲或查詢設備上的應用等,當你在adb shell 命令下執行pm命令

   

二、CPU佔用率;

adb命令:adb shell top | grep pid

              adb shell top | grep package

     adb shell dumpsys cpuinfo | grep pid

     adb shell dumpsys cpuinfo | grep package     

PS: 最好先adb shell 進入安卓系統,在執行adb shell以後的語句  windows系統dos窗口中grep換成find

三、內存佔用率;

adb命令:adb shell dumpsys meminfo | grep pid

           adb shell dumpsys meminfo | grep package

PS: 最好先adb shell 進入安卓系統,在執行adb shell以後的語句。  windows系統dos窗口中grep換成find

  TOTAL行的數據做爲當前app內測佔用的衡量數據;

執行出現結果會看到USS、RSS、VSS、PSS

USS指進程對子佔用物理內存(不包含共享庫佔用的內存);

RSS指實際使用的物理內存(包含共享庫佔用的內存);

VSS指虛擬好用內存;

PSS指實際使用的物理內存;

PS:移動端採用PSS指標

四、耗電量;

adb命令:adb shell dumpsys battery

PS: 最好先adb shell 進入安卓系統,在執行adb shell以後的語句

出現信息解讀:

AC powered:false  是否鏈接AC(電源)充電線

USB powered:true  是否鏈接USB(PC或筆記本USB插口)充電

Wireless powered:false  是否使用了無線電源

status: 1    電池狀態,2爲充電狀態,其餘爲非充電狀態

level:58     電量(%)

scale: 100.        電量最大數值

voltage: 3977      當前電壓(mV)

current now: -335232.     當前電流(mA)

temperature:355      電池溫度,單位爲0.1攝氏度

technology:Li-poly.    電池種類

五、溫度;

cat /etc/thermald.conf

cat 爲查看命令

六、每秒幀數(流暢度)[fps];

adb命令:adb shell dumpsys gfxinfo package

PS: 最好先adb shell 進入安卓系統,在執行adb shell以後的語句

     正常狀況下幀率應該在16ms左右,若是1秒60幀的話,並且Execute時間太長!須要優化

七、GPU佔用率;

PS :遊戲會測試到,但通常不去測試該指標;

八、網絡;

(1)、Wi-Fi[網絡友好度]

(2)、蜂窩[耗費資源和友好度]

adb 命令:adb shell dumpsys package | grep userId         [經過app包名,獲取app的userID(安裝後惟一且固定)]

               adb shell cat /proc/uid_stat/userId/tcp_rcv      [cat爲查看命令,讀取tcp_rcv獲取下載應用流量信息(設備重啓後清零)]

       adb shell cat /proc/uid_stat/userId/tcp_snd     [cat爲查看命令,讀取tcp_snd獲取下載應用流量信息(設備重啓後清零)]

九、ANR(頁面無響應);

十、Crash(程序崩潰);

PS :ANR和Crash使用Monkey測試

注:dumpsys是Android手機裏面的可執行文件

相關文章
相關標籤/搜索