Android OutOfMemoryError
示例
这是在堆上请求大量内存时发生的运行时错误。将位图加载到ImageView中时,这很常见。
您有一些选择:
使用大型应用程序堆
在您的AndroidManifest.xml中的应用程序标签中添加“largeHeap”选项。这将为您的应用提供更多内存,但可能无法解决根本问题。
<application largeHeap="true" ... >
回收您的位图
加载位图后,请确保将其回收并释放内存:
if (bitmap != null && !bitmap.isRecycled()) bitmap.recycle();
将采样的位图加载到内存中
避免使用BitmapOptions和inSampleSize通过减小大小的采样一次将整个位图加载到内存中。
例如,请参阅Android文档