【问题标题】:java.lang.OutOfMemoryErrorjava.lang.OutOfMemoryError
【发布时间】:2012-05-05 09:35:55
【问题描述】:

我用相机拍摄图像并将其存储在 sd 卡中,存储的图像必须从 sd 卡上传到 imageView 像这样:

myBitmap = BitmapFactory.decodeFile(file.getAbsolutePath());
ImageView _image=(ImageView)view.findViewById(R.id.imageCarte);
_image.setImageBitmap(myBitmap);

但我有这个错误:

05-05 08:23:20.593: E/AndroidRuntime(1936): 由: java.lang.OutOfMemoryError: 位图大小超出 VM 预算。

谁能帮帮我。谢谢

【问题讨论】:

标签: android camera


【解决方案1】:

在移动设备中使用 BitmapFactory 是一个消耗内存的过程。当您尝试连续解码大量图像时会出现此问题。 与在 java 中一样,没有选项可以释放分配给变量“myBitmap”的内存。所以请确保这些类型的变量在使用后设置为null。

也尝试使用

System.gc() to clear the garbage collection.

如果在执行“_image.setImageBitmap(myBitmap);”时抛出错误行然后尝试在显示之前减小图像大小

【讨论】:

    猜你喜欢
    • 2013-02-05
    • 2016-11-12
    • 2015-07-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多