我知道为什么会发生 OutOfMemoryError 异常。但是有任何最好的方法可以将字节数组转换为位图。我使用了下面的代码,但是当大字节时它会强制关闭应用程序并给出 OutOfMemoryError 异常。
我有 API,它只返回字节数组。
Bitmap bmp = BitmapFactory.decodeByteArray(bytearray, 0, bytearray.length);
Bitmap bitmap = BitmapFactory.decodeByteArray(bitmapbytes , 0, bitmapbytes .length);
返回 解码的位图,如果图像无法解码,则返回 null。
这对我有用:顺便说一下,照片是一串图像。
byte[] imgbytes = Base64.decode(photo, Base64.DEFAULT);
Bitmap bitmap = BitmapFactory.decodeByteArray(imgbytes, 0,
imgbytes.length);
imageupload.setImageBitmap(bitmap);
您可能希望使用 AQuery 库来加载图像,这将帮助您调整大小、查看等并避免最常见的内存泄漏。这个工具可以在这里找到:http ://code.google.com/p/android-query/