可以在Android中从Singleton释放Context以防止内存泄漏

时间:2015-05-14 00:35:29

标签: android performance memory-leaks

我维护一个遗留项目,由于限制,我无法进行大量重构。但我刚刚在下面的场景中发现了可能的内存泄漏。

将片段传递给单例类

Foo.getInstance().setBar(fragment);

假设静态实例的寿命更长,那么我们需要它,在该片段中的onDestroy()方法中将其置零是一种好方法。

@Override
public void onDestroy(){
    Foo.getInstance().setBar(null);//to prevent memory leak
    super.onDestroy();
}

我对内存泄漏区域不熟悉,如果有任何问题请纠正我:)

1 个答案:

答案 0 :(得分:2)

在单身人士中使用WeakReference