我使用一个名为LeakCanary的库,它允许我查找导致内存泄漏的任何问题。我在gradle中添加了以下引用:
debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.2'
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.2'
debugImplementation 'com.squareup.leakcanary:leakcanary-support-fragment:1.6.2'
使用这个库。现在,在为商店创建完整的APK发布之前,我需要注释上述行吗?还是只注释主活动中使用库的那一行就可以了?
谢谢。
no-op
包,否则你的代码会出问题。这也是为什么该包存在的原因。显然,发布版本的构建通常比调试版本稍小一些。可能只有几千字节,不会太过惊人。或者,你可以完全删除它...包括代码中所有LeakCanary
类的出现,而删除releaseImplementation
将导致代码出错。 - Martin ZeitlerLeakCanary.install(this)
和一个refWatcher
。所以这取决于你。我建议保留releaseImplementation
,这样在开发新版本时会更轻松。 - Kirill Karmazin