Android之内存分析工具
2016-10-01 本文已影响0人
阿吹md
相信大多数小伙伴都在用Android Studio 作为androd开发工具了,Android studio可以对手机中应用进程进行相关的监控,那么在进行这样进一步分析是否有内存泄露的现象,以进一步进行开发。废话不多说我们今天就介绍一下AS自带的内存分析工具 Memory Monitors,和第三方内存检测工具leakcanary
首先打开你的android studio,在左下角你会看到:
a.png
然后点开它,选择Monitors,连接好你的设备,选择你自己应用的进程(一般是包名),运行你的app你可以看到:
内存分析.png
当然app运行起来之后,是不会出现上图的情况,你得了解Memory旁边这几个按钮的功能:
b.png
1.1 如上图箭头所指的按钮就是启动检测,当你app进入不同界面你会发现内存的变化,这样是不是非常直观呢!!!
1.2按钮 很明显就是启动垃圾回收...
1.3按钮 点击后过一会自动生成.hprof的内存使用情况文件,如下图就可以看到一些变量之类的内存使用情况
d.png
1.4按钮 会启动一个内存跟踪,会生成一个文件,也是一样可以查看内存相关使用情况
接下来我们再来介绍一下第三方内存检测工具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的内存使用情况,当你的app出现内存泄漏等情况,leakcanary会第一时间通知你,你会看到:
p.png你的app哪一个activity出现内存泄漏都会一目了然,赶紧get起来吧!!!