美文网首页Android进阶之路
利用Android Studio的 Monitor Memory

利用Android Studio的 Monitor Memory

作者: chzphoenix | 来源:发表于2017-08-10 14:30 被阅读38次

    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

        本文链接:https://www.haomeiwen.com/subject/zxehrxtx.html