Я использую LeakCanary для отладки утечек памяти в моем приложении, но обнаружена сильная утечка памяти (я думаю, что она генерируется в Acitvities, в которых есть EditText).Ниже приведен скриншот утечки.Я читал ветку в github LeakCanary, и кто-то рекомендовал следующий фрагмент кода в методе 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 }
}
}
Отчет об утечке: