android開發和測試工具分析_DDMS和MAT

android的開發和測試工具很多,稍微總結下,方便以後用。

 首先說個簡單點的,分析程序的內存泄露工具DDMS:

    



之前項目中遇到的一個就是2-byte arry的數據在不停的增長,導致程序運行的很卡,直到最後卡死。

如果你發現了一種類型的數據在不停的增長,就要具體問題具體分析了,因爲你是對代碼最熟的。我當時就一段代碼一段代碼的排除,最後找到泄露的地方。


另外一種方式稍微麻煩一點,我用的也不是很熟練,簡單介紹下:


   然後要下載一個工具(也算是eclipse的一個插件):

 MemoryAnalyzer-1.1.1

  下載下來之後直接點擊MemoryAnalyzer.exe,然後open 上面生成的hprof文件,見下圖。

   



餅狀圖就畫出來當前可能出現問題的概率,餅狀圖下面會有詳細的文字描述。

調試內存泄露時,有時候適時比較2個地方的heap狀態是很有用的。這時你就需要生成2個單獨的HPROF文件(不要忘了轉換格式)。下面是一些關於如何在MAT裏比較2個heap dumps的內容(有一點複雜):

  1. 第一個HPROF 文件(using File > Open Heap Dump ).
  2. 打開 Histogram view.
  3. 在Navigation History view裏 (如果看不到就從Window > Navigation History找 ), 右擊histogram 然後選擇Add to Compare Basket .
  4. 打開第二個HPROF 文件然後重做步驟2和3.
  5. 切換到Compare Basket view, 然後點擊Compare the Results (視圖右上角的紅色"!"圖標)。

  給兩個鏈接,mat說的比較詳細:

http://hi.baidu.com/weiyousheng/blog/item/c78980a2d29de9b7cbefd0a7.html

   http://allenshao.iteye.com/blog/1040935

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章