【发布时间】:2011-09-20 15:56:13
【问题描述】:
我有一个ListView,我希望它会在活动完成后从内存中清除。但是,它似乎正在泄漏。当我检查内存转储并获取pathToGC 的ListView 时,我得到以下信息,
Class Name | Shallow Heap | Retained Heap
android.widget.ExpandableListView @ 0x4063e560 | 768 | 39,904
|- list, mList com.hitpost.TeamChooser @ 0x405f92e8 | 176 | 1,648
| '- mOuterContext android.app.ContextImpl @ 0x40657368 | 160 | 304
| '- mContext android.media.AudioManager @ 0x40662600 | 40 | 168
| '- this$0 android.media.AudioManager$1 @ 0x406626b0 Unknown| 24 | 24
我在很多ListView's 上都看到了同样的上下文。诀窍是,我根本没有在我的应用程序的任何地方使用AudioManager,应用程序根本没有声音。请帮忙,这让我发疯了。显然是想弄清楚为什么会发生这种情况以及根本问题是什么?
【问题讨论】:
-
是的,有静态变量,只是从具有 ListView 的活动之一中删除了所有这些变量。但同样的上下文仍在泄漏。
-
正如我所说,AudioManager 从字面上看绝对没有出现在我的代码中,甚至出现在我正在使用的任何库中。因此我继续困惑
-
你有没有想过是什么原因造成的?
-
我面临同样的问题。我的一项活动即使在被销毁后仍留在记忆中。 MAT 显示 AudioManager 正在持有它,我没有在任何地方使用 AudioManager。对此有何想法?
-
我也有这个问题...有什么解决办法吗?真的很烦人......我的很多活动无缘无故地跟不上这个问题
标签: android listview memory-leaks android-audiomanager