TraceView

Debug.startMethodTracin Debug.stopMethodTracin Debug.stopMethodTracin

Traceview是android平台配備一個很好的性能分析的工具。它可以通過圖形化的方式讓我們了解我們要跟蹤的程式的性能,並且能具體到method。
關於Traceview的使用
首先,必須在程式當中加入代碼,以便生成trace檔案,有了這個trace檔案才可以將其轉化為圖形。
要添加的代碼如下:
許可權設定:程式會將Trace檔案寫入手機SDcard中,因此需要添加記憶體卡訪問許可權
在manifest檔案中加入: <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
Java代碼
// start tracing to "/sdcard/yourActivityTrace.trace"
Debug.startMethodTracing("yourActivityTrace"); // ... // stop tracing Debug.stopMethodTracing(); // start tracing to "/sdcard/yourActivityTrace.trace" Debug.startMethodTracing("yourActivityTrace"); // ... // stop tracing Debug.stopMethodTracing();
Google Dev Guide當中說可以在activity的OnCreate()中添加Debug.startMethodTracing(), 而在onDestroy()中添加Debug.stopMethodTracing(),但是在實際的測試時發現這種方式其實並不好用,因為通常情況下我們的activity的onDestroy()是由系統決定何時調用的,因此可能等了很長時間都不會得到這個trace檔案。因此決定在onStop()中來調用Debug.stopMethodTracing()。這樣當我們切換到其它activity或者點擊home鍵的時候onStop()就會被調用,我們也就可以得到完整的trace file。
在運行程式之前,首先要保證我們的AVD是一個帶有SD card的AVD,這樣才能使trace檔案保存到/sdcard/...當中。運行後可以任意做一些操作,然後點擊home鍵。這是通過DDMS file explore就可以看到/sdcard/目錄下有一個trace檔案,現在把這個檔案copy到電腦上指定的目錄,假設是C:\tracefile 目錄下。
可以通過命令行來執行traceview,進入tools目錄後,執行
traceview C:\tracefile\yourActivityTrace.trace
之後就可以看到圖形了,接下來就是按照Google Dev Guide中的解釋去分析圖形就OK了。

相關詞條

相關搜尋

熱門詞條

聯絡我們