|
|
|
Convert Byte Array to Bitmap: เจอ Error Out of Memory |
|
|
|
|
|
|
|
สวัสดีครับ ผมมีเรื่องอยากจะรบกวนช่วยหน่อยครับ เรื่องการแปลง Byte Array เป็น Bitmap ในแอนดรอยด์ครับ มันขึ้น Error Out of Memmory ครับ
ส่วนของโค๊ดครับ
Code (Java)
InputStream in = new java.net.URL(urldisplay).openStream();
Log.v("Test3 Log", "doInBackground() in => " + in);
// mIcon11 = BitmapFactory.decodeStream(in);
mIcon11 = convertInputStreamToByteArray(in);
Code (Java)
public Bitmap convertInputStreamToByteArray(InputStream inputStream) {
byte[] bytes = null;
Bitmap bitmap = null;
try {
ByteArrayOutputStream bos = new ByteArrayOutputStream();
byte data[] = new byte[1024];
int count;
while ((count = inputStream.read(data)) != -1) {
bos.write(data, 0, count);
}
bos.flush();
bos.close();
inputStream.close();
bytes = bos.toByteArray();
Log.v("Test3 Log", "Bitmap before decode => " + bytes);
bitmap = BitmapFactory.decodeByteArray(bytes, 0, bytes.length);
Log.v("Test3 Log", "Bitmap after decode => " + bitmap);
} catch (IOException e) {
e.printStackTrace();
}
return bitmap;
}
คือมันมีปัญหาที่ตอน BitmapFactory.decodeByteArray(bytes, 0, bytes.length); ถ้าภาพใหญ่มันจะพังอะครับอะครับ(ไม่สามารถ decode ได้) แล้วถ้าไม่ใช้ BitmapFactory ได้ไหมครับ รบกวนหน่อยครับผมมือใหม่ T_T
Tag : Java, Android
|
ประวัติการแก้ไข 2014-01-08 17:51:05 2014-01-08 17:53:22
|
|
|
|
|
Date :
2014-01-08 17:46:00 |
By :
GVcs |
View :
1569 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามนั้นครับ ไฟล์ใหญ่เกินไปครับ
|
|
|
|
|
Date :
2014-01-08 20:42:41 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|