我使用ZXing库编写了一个Android应用程序,出现了
起初,我确信错误是在我这边,所以根据Patrick Dubroy(见Google I/O 2011: Memory management for Android Apps和其他教程)的建议,使用Eclipse Memory Analyzer(MAT)来查找内存泄漏,如Android Memory Leaks OR Different Ways to Leak。
在MAT中,我发现随着时间的推移,数百个
令人惊讶的是,我在原始的ZXing测试程序“CaptureActivity”中也遇到了同样的问题!
经过一些调查,我有一个线索,即
是否有人可以重现这种现象或曾经遇到过类似情况?
java.lang.OutOfMemoryError
错误。起初,我确信错误是在我这边,所以根据Patrick Dubroy(见Google I/O 2011: Memory management for Android Apps和其他教程)的建议,使用Eclipse Memory Analyzer(MAT)来查找内存泄漏,如Android Memory Leaks OR Different Ways to Leak。
在MAT中,我发现随着时间的推移,数百个
com.google.zxing.common.BitMatrix
实例占用了大部分堆内存。令人惊讶的是,我在原始的ZXing测试程序“CaptureActivity”中也遇到了同样的问题!
经过一些调查,我有一个线索,即
DecodeHandler
类中的活动引用可能会阻止垃圾收集器释放BitMatrix
。但我经验不足,无法验证这一点。此外,我很惊讶在原始的ZXing库(版本2.1)中发现了这个问题。是否有人可以重现这种现象或曾经遇到过类似情况?