我们有一个内存中有很多位图的应用程序.它一直在失败
java.lang.OutOfMemoryError: bitmap size exceeds VM budget
错误.我们可能真的使用了太多的记忆;我们可能会泄漏记忆;我们也可能没有做错任何事情,堆碎片就是让我们失望的原因. (由于Android的垃圾收集器不会重新定位实时块,我们可以释放兆字节,并且无法分配50K.)
有没有办法排除碎片?我找过像maxAvail / memAvail这样的东西,但没有发现任何适合的东西.
解决方法
我将研究通过
MAT检查堆.Eclipse内存分析器将帮助您确定实际拥有的建议问题.
在Google I / O 2011上有一个关于内存管理和调试主题的基础知识.你可以在这里在线观看:http://www.youtube.com/watch?v=_CruQY55HOk&feature=relmfu