我有一个项目,它集成了LeakCanary来检测内存泄漏。我知道它使用HAHA将内存转储到hprof文件以检测泄漏。
但每次我从Android Studio运行应用程序时,它都会触发转储进程,并创建一个大小约为60-70 MB的新hprof文件。

当它使我的设备充满内存的时候。当我试图删除泄漏应用程序中的泄漏日志时,一些关闭的hprof文件没有被清理(文件名中有_pending ),如下图所示。我必须手动删除它。

我是LeakCanary新手,请帮助我如何减少转储进程的频率,以及如何自动清理所有hprof文件。
发布于 2019-11-15 18:49:51
我实现了leakcanary版本1.5.4和android studio 3.5.1
依赖项包括
debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.5.4'
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'在模拟器中,在再现内存泄漏后,hprof文件路径可以是:
/data/user/10/<app_package_name>/files/leakcanary/<filename>.hprof发布于 2019-11-20 06:35:20
尝试升级到最新版本的LeakCanary:https://square.github.io/leakcanary/getting_started/
它应该在清理hprof文件方面做得更好。如果没有,请在项目上提交一个错误
要一次删除所有现有的hprof文件,您可以使用"adb shell“并使用"rm”将其全部删除。
https://stackoverflow.com/questions/48435522
复制相似问题