要清除所有后台活动我做了以下内容:这种情况下的内存泄漏究竟是什么?
我保持一个静态数组列表,每当我去从一个活动到另一个活动,在新的活动的onCreate()方法,我添加的对象当前活动如下:
SomeClass.addActivity(CurrentActivity.this);
我在每项活动中添加了上述说明。
的addActivity():
public void addActivity(final Activity activity) {
activityList.add(activity);
}
而当我想以清除栈,我叫:
public boolean clearStack() {
for (Activity activity : activityList) {
activity.finish();
}
activityList.clear();
return (activityList.isEmpty());
}
就这样,我清了活动堆栈。
但它产生了内存泄漏。这不是正确的做法。持续参考活动并不好。你们能解释一下为什么以及在这种情况下究竟发生了什么内存泄漏?
我用MAT月食找到我的应用程序此内存泄漏。
任何帮助将不胜感激。
清晰明了的解释。谢谢 – Shrikant
@Shrikant:如果你愿意 - 我可以为你提供更好的解决方案来清除背景活动 –
Yaa。请告诉我。 – Shrikant