Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android性能調優工具之 TraceView

Android性能調優工具之 TraceView

編輯:關於Android編程

從1月份Google發布的16個關於性能優化的系列視頻起,這段時間在各大社區都有看到很多優秀的關於優化系列的文章。有分析了性能產生的原因、有分享如何優化我們的應用、有介紹有哪些工具可以幫助我們檢測性能問題。

 

其中 在關於一些系統性能調優工具裡有介紹到工具之一:TraceView

TraceView 是 Android 平台配備一個很好的性能分析的工具。它可以通過圖形化的方式讓我們了解我們要跟蹤的程序的性能,並且能具體到某個函數方法method的執行耗時時間。

因為小呂之前確實沒有使用過該工具、所以這兩天也自己試玩了一把、將該工具的簡單使用操作做個簡單的圖文介紹。也希望在以後的工作當中要重視該工具的使用、利用好該工具。

 

一、如何使用該工具 采集數據
1、第一種使用方式
① 在你需要調式的代碼片段首尾分別添加代碼

Debug.startMethodTracing(traceView);  
Debug.stopMethodTracing();
如 我們想要對MainActivity的onCreate() 和 onDestory() 方法之間做跟蹤,代碼可如下:
public class MainActivity extends Activity {  
  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        setContentView(R.layout.activity_main);  
        /*
         * 將在SD卡根目錄生成數據性能采集文件 traceView.trace
         * 注意:
         *     1、一定要在有SD卡的調試手機或模擬器上使用
         *     2、添加SD卡訪問讀寫權限:
         */
        Debug.startMethodTracing(traceView);
    }  
  
    @Override  
    protected void onStart() {  
        super.onStart();         
        Debug.stopMethodTracing();  
    }  
      
}  
②、當程序運行過上面的代碼之後 便會在你的手機或模擬器的SD卡根目錄生成文件 traceView.trace, 如下圖:
\
③、在正式使用traceview工具分析數據前,我們使用adb命令將SD卡根目錄下的traceView.trace文件導出到我們的本地電腦中,adb命令如下:
\
如上命令 我將.trace文件導出在我的電腦C: mp下 如圖:
\
④、在{sdk}/tools/目錄下 找到我們的工具traceview.bat、雙擊運行他吧, 會有如下顯示:
\
提示我們使用 Android Device Monitor

 

⑤、但是我們執行如下命令: traceview xxx.trace, 使用traceview去訪問執行.trace文件
\
一伙出現效果如下: \

根據之前命令的提示:
這裡我們也可以使用執行Android Device Monitor工具 出現如下界面
\
在該界面中 我們可以通過 file--> open file 打開之前導出的.trace文件,這時將會看到同樣的效果:
\
到此 我們便完成了數據的采集與使用traceview工具將數據做了圖形化展示


2、第二種使用方式
相對第一種方式 這種要簡單很多
通過選擇 Devices 中的應用後點擊按鈕 Start Method Profiling(開啟方法分析)和點擊 Stop Method Profiling(停止方法分析) 如圖:
\
當停止采集時,DDMS會自動觸發Traceview工具來浏覽采集數據


二、如何使用該工具 分析數據
當看到圖形化的trace數據後、我們要知道如何看懂上面的數據、以做出正確的分析、最後在分析中查找性能上的問題、最終從代碼上解決問題。

這部分主要包括:
1、TraceView工具面板的掌握,分析面板每列待辦的含義 如:Name、 Incl Cpu Time、 Excl Cpu Time、 Incl Real Time等。

\
2、如何去定位分析我們要監視的具體方法(通過TraceView底部的find來查找)。
3、如何去定位那些耗時(導致性能問題)的方法(篩選出方法耗時排行的時間 如:Incl Cpu Time列、Cpu Time/Call列)。

4、最後根據找出性能上有缺陷的具體方法、去做代碼上的優化。

這裡的內容遠遠超過上面關於 工具數據采集的使用介紹,小呂也剛好在網上有收集到兩篇優秀的關於TraceView工具的使用介紹:
1、Android系統性能調優工具介紹:http://blog.csdn.net/innost/article/details/9008691
2、Android編程下的TraceView簡介及其案例實戰:http://www.cnblogs.com/sunzn/p/3192231.html


三、其他
關於Android的調優工具除了TraceView外、還有Overdraw,Systrace,StrictMode,Hierarchy Viewer等。

 

 

 

 

 

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved