我知道为什么会出现OutOfMemoryError异常。但是有任何最好的方法将字节数组转换为Bitmap.And我使用下面的代码,但是当大字节时它强制关闭app并给出OutOfMemoryError异常。
我有API它只返回字节数组。
Bitmap bmp = BitmapFactory.decodeByteArray(bytearray, 0, bytearray.length);
答案 0 :(得分:7)
Bitmap bitmap = BitmapFactory.decodeByteArray(bitmapbytes , 0, bitmapbytes .length);
返回已解码的位图,如果图像无法解码,则返回null。
答案 1 :(得分:3)
这对我有用: 顺便说一下,照片是一串图像。
byte[] imgbytes = Base64.decode(photo, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(imgbytes, 0,
imgbytes.length);
imageupload.setImageBitmap(bitmap);
答案 2 :(得分:0)
您可能必须使用以下方法(DOC,使用相同的方法,但使用options参数):
public static Bitmap decodeByteArray (byte[] data, int offset, int length, BitmapFactory.Options opts)
使用options参数进行播放。希望这会帮助你=)
答案 3 :(得分:0)
您可能希望使用AQuery库来加载图像,这将有助于您调整大小,查看等,并避免最常见的内存泄漏。可以在此处找到此工具:http://code.google.com/p/android-query/