我正在使用LeakCanary调试应用程序中的内存泄漏,但是检测到临时内存泄漏(我认为它是在其中包含EditText的Acitvities中生成的)。以下是泄漏的屏幕截图。 我已经阅读了LeakCanary的github上的线程,并且有人建议使用onDestory方法中的以下代码,但这对我也不起作用。
private void handleSemManagerMemoryLeak(Activity activity) {
try {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && Build.MANUFACTURER.equals("samsung")) {
Object systemService = activity.getSystemService(Class.forName("com.samsung.android.content.clipboard.SemClipboardManager"));
Field mContext = systemService.getClass().getDeclaredField("mContext");
mContext.setAccessible(true);
mContext.set(systemService, null);
}
} catch (Exception e) { //ignored }
}
}
泄漏报告: