分配的内存不断增加

问题描述:

分配的内存不断增加,1mb没有减少... 看起来垃圾收集器根本没有被调用。分配的内存不断增加

我有主要活动与选项卡布局和4片段(如instagram),并与我从服务器获得大量的位图。 一旦我从互联网上下载数据,如果再次调用该片段,我将使用保存ArrayList中要调用的对象。 例如:

@Override 
public void onPause() { 
    super.onPause(); 

    if (itemsArray != null) { 
     savedListState = new Bundle(); 
     savedListState.putSerializable("myKey", itemsArray); 
    } 
} 
@Override 
public void onResume() { 
    super.onResume(); 

    if (savedListState != null) { 
     customGridProfileAdapter = new CustomGridProfileAdapter(getActivity(), itemsArray); 
     gridView.setAdapter(customGridProfileAdapter); 
     savedListState = null; 
    } 
} 

我并没有破坏视图。 我认为这是问题,但看起来不是这样,因为当我在活动之间切换时,它仍然以同样的方式工作,即使我销毁正在被替换的活动的视图。 那么该怎么办?为什么垃圾收集器不会减少分配的内存? 我应该如何处理已下载的物品?

您的应用程序可能存在内存泄漏。要详细了解内存泄漏watch this wonderful video。根据我的经验,每个大型应用程序都会遇到这个问题。