android内存泄露 mat
16lz
2021-01-26
1. 安装eclipse内存分析插件 www.eclipse.org/mat
2.进入adb shell, ps想要dump内存堆栈的进程,记录pid
3. 确保/data/misc有写入权限,没有的话执行chmod 777 修改该目录权限
4. 执行kill -10 pid,用adb logcat可以查看dump过程,
/dalvikvm(237): SIGUSR1 forcing GC and HPROF dump
I/dalvikvm(237): hprof: dumping VM heap to "/data/misc/heap-dump-tm1277353007-pid237.hprof-hptemp".
I/dalvikvm(237): hprof: dumping heap strings to "/data/misc/heap-dump-tm1277353007-pid237.hprof".
I/dalvikvm(237): hprof: heap dump completed, temp file removed
5. 然后,在/data/misc下查看是否产生了类似heap-dump-tm1277353007-pid237.hprof之类的文件,该文件即为dump出来的文件。
6. 用adb pull获得dump出来的文件
7. 用android提供的工具hprof-conv把dump出来的文件转换为mat可以读取的格式
8. 用mat打开转化后的文件格式进行分析
更多相关文章
- LeakCanary分析,如何判定的内存泄漏说明
- Android中文联系人排序及检索补丁的原理(090819更新)
- android 6.0禁用了权限却返回0
- 通过Android(安卓)Studio 导出Jar包
- 『原』在Linux下反编译Android(安卓).apk文件 使用apktool dex2j
- Android(安卓)查看蓝牙日志
- 重学 Android(安卓)面试题
- android 的反编译与防反编译
- Android的OutOfMemory解决