我正在使用 BitmapFactory
从文件中解码 JPG,然后用它设置 ImageView
的 imageBitmap
。有时,应用会因“java.lang.OutOfMemoryError: bitmap size exceeds VM budget
”而崩溃
我试过使用:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 2;
Bitmap bm = BitmapFactory.decodeFile(filepath, options);
它似乎工作了一段时间,但现在不行了。我能做什么?
最佳答案
在 Android 中,可以分配给应用程序的内存量有上限,大约在 16 MB 到 32 MB 之间。 (至Android版本)
对于 2 兆像素,位图所需的内存为 2 * 4 = 8 M。
要减少内存消耗,您需要降低图像分辨率。先说 WVGA,800x480
哈希
关于android - java.lang.OutOfMemoryError : bitmap size exceeds VM budget 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6984451/