Android将字节数组转换为Bitmap的最佳方法?

时间:2012-07-18 17:47:03

标签: java android byte

我知道为什么会出现OutOfMemoryError异常。但是有任何最好的方法将字节数组转换为Bitmap.And我使用下面的代码,但是当大字节时它强制关闭app并给出OutOfMemoryError异常。

我有API它只返回字节数组。

Bitmap bmp = BitmapFactory.decodeByteArray(bytearray, 0, bytearray.length);

4 个答案:

答案 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/