相信大多數(shù)小伙伴都在用Android Studio 作為androd開發(fā)工具了,Android studio可以對手機中應用進程進行相關的監(jiān)控,那么在進行這樣進一步分析是否有內(nèi)存泄露的現(xiàn)象觅够,以進一步進行開發(fā)。廢話不多說我們今天就介紹一下AS自帶的內(nèi)存分析工具 Memory Monitors,和第三方內(nèi)存檢測工具leakcanary
首先打開你的android studio,在左下角你會看到:
a.png
然后點開它,選擇Monitors,連接好你的設備,選擇你自己應用的進程(一般是包名),運行你的app你可以看到:
內(nèi)存分析.png
當然app運行起來之后,是不會出現(xiàn)上圖的情況,你得了解Memory旁邊這幾個按鈕的功能:
b.png
1.1 如上圖箭頭所指的按鈕就是啟動檢測,當你app進入不同界面你會發(fā)現(xiàn)內(nèi)存的變化,這樣是不是非常直觀呢!!!
1.2按鈕 很明顯就是啟動垃圾回收...
1.3按鈕 點擊后過一會自動生成.hprof的內(nèi)存使用情況文件,如下圖就可以看到一些變量之類的內(nèi)存使用情況
d.png
1.4按鈕 會啟動一個內(nèi)存跟蹤,會生成一個文件,也是一樣可以查看內(nèi)存相關使用情況
接下來我們再來介紹一下第三方內(nèi)存檢測工具leakcanary
github地址:https://github.com/square/leakcanary
在你的app中添加依賴:
dependencies {
debugCompile 'com.squareup.leakcanary:leakcanary-android:1.5'
releaseCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'
testCompile 'com.squareup.leakcanary:leakcanary-android-no-op:1.5'
}
在你的Application的onCreate()中添加:
public class ExampleApplication extends Application {
@Override public void onCreate() {
super.onCreate();
LeakCanary.install(this);
}
}
添加這句代碼就可以了,是不是很簡單,Leakcanary會實時檢測你app的內(nèi)存使用情況,當你的app出現(xiàn)內(nèi)存泄漏等情況,leakcanary會第一時間通知你,你會看到:
p.png
你的app哪一個activity出現(xiàn)內(nèi)存泄漏都會一目了然,趕緊get起來吧!!!