【问题标题】:Memory issue on android安卓内存问题
【发布时间】:2012-05-31 18:35:48
【问题描述】:

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

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

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

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

我尝试过的:

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

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

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

【问题讨论】:

  • 我认为您必须显示一些代码才能获得任何结果。
  • 我找到了解决方案。解决方案在底部。

标签: android memory


【解决方案1】:

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

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

CommonsWare 评论。

【讨论】:

    猜你喜欢
    • 2012-05-07
    • 2018-07-03
    • 2014-02-19
    • 2011-06-12
    • 2016-05-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多