0

在后台保存图像然后传输到充满图片的 gridview 时出现内存问题。

那么我的应用程序是如何工作的:

活动一“显示一堆图像”(此处启用了无痛加载)活动二“将图像保存在sd卡中”

我遇到的问题在于活动二,因为它涉及活动一。当项目保存在显示缺少图像的背景中时。

我试过的:

在转移到活动一之前,我曾尝试调用 System.gc()。

我试图创建一个方法并将变量更改为 null。(强制垃圾收集)

我的尝试没有成功。因此,如果有人可以让我更好地了解我的优化选项,我将不胜感激。

4

1 回答 1

0

我昨天找到了问题的原因。问题是我在 AsyncTask 类中添加了项目,甚至在完成该类之后转移下一个活动。异步类以某种方式保存了它的项目,因为我正在使用包含我的异步类中的上下文的 ProgressDialog 并且根据此评论

“它将保留对 Activity 的引用,防止 Activity 被垃圾收集......除非它是一个静态内部类或完全独立的类,它没有引用 Activity 或任何指向 Activity 的东西”

CommonsWare评论。

于 2012-06-01T14:33:07.153 回答