Android 内存检查
Posted Coffee
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 内存检查相关的知识,希望对你有一定的参考价值。
android 内存检查
本文简单介绍了如何使用 DDMS 和 MAT 工具来对 android 进行内存检查,了解 android 内存的具体占用情况。
步骤1. 使用 DDMS 观察内存的使用情况
环境准备:电脑安装了 android sdk,手机端开启了 USB 调试开关, 将手机连接 PC。
可以单独使用 ddms,或者在 android studio中Tools -> Android -> android device monitor, 选择待调试的 device 和进程。
步骤2. 内存使用异常时 dump hprof files
正常情况下 allocated size 值都会稳定在一个有限的范围内,每次 GC 之后都会释放,如果发现 allocated size 一直增加没有得到释放,这说明内存占用存在问题,可能存在内存泄露。点击左侧的 dump java heap,导出 hprof 文件,假设命名为 test.hprof。
步骤3. 使用 MAT 分析 hprof 文件
(1)首先下载 MAT 工具,MAT 可以是 eclipse 插件,也可以下载一个独立的应用。
MAT 工具的下载地址:http://www.eclipse.org/mat/downloads.php
(2)步骤2中导出的 hprof 文件不能直接被 MAT 解析,需要转换一下:
cmd 进入 sdk\tools 目录,比如:cd E:\AutoTestProj\AutoTest\tools\android_sdk\tools;
(3)将步骤2中导出的 test.hprof 拷贝到该目录下;
(4)运行cmd:hprof-conv test.hprof output.hprof
则该目录下会生成 output.hprof 文件;
(5)MAT工具导入 hprof 文件
file -> open heap dump -> 选择 output.hprof,可以看到 leak suspects 分析报告。如果发现问题,需要及时和开发沟通解决。
以上是关于Android 内存检查的主要内容,如果未能解决你的问题,请参考以下文章