Android Native内存泄漏检测方法
Posted zzc1024
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Native内存泄漏检测方法相关的知识,希望对你有一定的参考价值。
android 检测 C/C++内存泄漏的方法越来越简便了,下面列举一下不同场景下检测C/C++内存泄漏的方法。
Android O(针对root设备,调试APP)
1. 准备一个userdebug或eng版本手机,下载native_heapdump_viewer.py脚本备用
2. 执行以下命令
adb shell setprop wrap.<APP_PACKAGE_NAME> ‘"LIBC_DEBUG_MALLOC_OPTIONS=backtrace"‘
3. 执行重现路径N次
4. 执行以下命令,其中/some/path/to/symbols/是指存放带有符号信息so文件的文件夹,默认是$ANDROID_PRODUCT_OUT/symbols。
adb shell am dumpheap -n <PID_TO_DUMP> /data/local/tmp/heap.txt adb shell pull /data/local/tmp/heap.txt python development/scripts/native_heapdump_viewer.py --html --symbols /some/path/to/symbols/ heap.txt > heap_info.html
Android O(针对未root设备,调试APP)
待续...
以上是关于Android Native内存泄漏检测方法的主要内容,如果未能解决你的问题,请参考以下文章
Netty源码-内存泄漏检测toLeakAwareBuffer
我的Android进阶之旅如何在NDK开发的时候定位Native层的内存泄漏?
我的Android进阶之旅如何在NDK开发的时候定位Native层的内存泄漏?