使用traceview進行Android效能測試

來源:互聯網
上載者:User

標籤:

一、 TraceView工具簡述

  Traceview是android平台配備的一個很好的效能分析工具。它可以通過圖形介面的方式讓我們瞭解我們要跟蹤的程式的效能,並且能具體到method。

  二、 TraceView工具使用方法

  TraceView有三種啟動方式,下面逐一介紹:

  1、 代碼中啟動

  可以在代碼中添加

  Debug.startMethodTracing(“Tracelog”);

  Debug.stopMethodTracing();

  使用這種方式需要確保應用的AndroidMainfest.xml中的SD卡的讀寫權限是開啟的,即

   應用運行完後,會在SD卡下產生一個Tracelog檔案,使用adb pull把這個檔案拷貝至XP系統上,再在android sdk的tools目錄下執行traceview Tracelog,則會彈出一個圖形介面,通過這個圖形介面就可以分析出應用的效能瓶頸;

  2、 Eclipse中啟動

  Eclipse啟動traceview及其簡單,在DDMS中對需要分析的應用進程點擊如下按鈕

       

  在需要停止traceview的地方點擊相同的按鈕,則Eclipse會自動彈出類似1中的一個圖形介面;

  3、 adb 命令列啟動

  adb shell am profile start

  adb shell am profile stop

  PROCESS_ID為應用的進程號,可以用ps命令擷取,TRACE_FILE為需要儲存的Trcaelog檔案。

  執行上面的命令後,會產生對應的TRACE_FILE,使用adb pull把這個檔案拷貝至XP系統上,再在android sdk的tools目錄下執行traceview Tracelog,則會彈出一個圖形介面,通過這個圖形介面就可以分析出應用的效能瓶頸;

  三、 TraceView介面說明

  上述步驟產生的圖形介面如下所示:

        

 

四、 TraceView工具執行個體使用說明

  本例以安居客選擇一個城市中的一套房源進行收藏的過程為例,詳細講述如何使用TraceView工具。

  操作步驟如下:

  1、 啟動Eclipse,並串連上模擬器;

  2、 在模擬器上啟動安居客應用,並開啟DDMS,選中安居客進程;

  3、 點擊Start profile method按鈕;

  4、 在安居客中開啟一套房源,等待房源成功開啟後查看大圖並進行收藏;

  5、 點擊DDMS中的stop profile method按鈕,將會在 Eclipse中自動彈出一個圖形介面。

  按照平均調用時間(time/calls)從大到小來進行排序,見:

      

 

     

 

    從可知,DetailActivityForPicture.onCreat()函數的平均調用時間為4.034秒,共調用了1次,調用時間相 對較久,再看它調用的子函數。其中,子函數DetailActivityForPicture.initInfo()的調用時間為0.9s。相對時間較 長,若需要最佳化效能,需要對initInfo()執行時間進行最佳化。

  下面再來看DetailActivityForPicture.initInfo()函數的子函數的情況,

       

 

  進一步可分析出來initFavoriteButton()調用時間最長為0.4s。依次查詢下去,見:

       

  DialogBoxUtil.getFavoriteWindow()和FavoritePropertyModel.函數可以進行最佳化。如上效能分析結果,可供開發人員參考,並有針對地進行效能最佳化。

使用traceview進行Android效能測試(轉)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.