利用Android Studio的 Monitor Memory 查找内存泄漏
生活随笔
收集整理的這篇文章主要介紹了
利用Android Studio的 Monitor Memory 查找内存泄漏
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
App開發總會遇到內存泄漏的情況,在Eclipse時代我們一般使用MAT來配合分析,Android Studio會方便一些,因為它自帶了一個Monitor Memory。下面我們來看看怎么使用這個工具。
首先打開Monitor Memory工具
在Monitor Memory界面上,我們可以實時觀察Memory、CPU等的使用情況。
在Memory面板上有兩個圖標(紅圈中),第一個卡車的圖標是GC功能,點擊可以觸發GC;第二個桶狀的圖標則是統計Memory并生成hprof文件。
我們一般會先觸發一次GC,然后再生成hprof文件。hprof文件可以用MAT工具打開來進行分析,當然我們也可以利用Android Studio自帶工具來查看。
點擊桶狀圖標,會在Memory面板上顯示一個位置,表示生成這個hprof文件的時間位置,如圖
同時生成hprof文件并自動打開Android Studio自帶的查看工具,如圖
這里有三塊區域:一區是當前內存中的所有數據類型的相關信息;二區是某個數據類型下的所有對象實例的相關信息;三區是某個對象事例的引用路徑。
剛打開的時候,二區和三區是空白的。
當在一區中選中一個數據類型,會在二區中顯示這個類型的所有對象實例(注意有的類型的total count是0,表示沒有實例)
在二區中選中一個實例,會在三區中顯示這個實例的所有引用路徑。
通過觀察引用路徑來找到該實例未回收的原因。
Android Studio的工具用起來很方便,但是功能比較單一,僅僅是查看。所以如果不能很快查找到原因,建議使用MAT或其他一些強大的工具來分析。
?
總結
以上是生活随笔為你收集整理的利用Android Studio的 Monitor Memory 查找内存泄漏的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 剖析Fragment的Pause生命周期
- 下一篇: android studio中创建、切换