[안드로이드/android] BitmapFactory.decodeStream return null
옵션(Options)이 설정된 경우 BitmapFactory.decodeStream 메소드 값이 항상 널(Null)을 반환할 때 해결방법
InputStream is = new BufferedInputStream(conn.getInputStream());
is.mark(is.available());
// First decode with inJustDecodeBounds=true to check dimensions
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(stream, null, options);
is.reset();
// Calculate inSampleSize
options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
// Decode bitmap with inSampleSize set
options.inJustDecodeBounds = false;
return BitmapFactory.decodeResourceStream(null, null, stream, null, options);
[Solution]
1. InputStream 생성 과정에서 BufferedInputStream을 이용한다.
2. options.inJustDecodeBounds = true; 를 호출하기 전에 is.mark(is.available()); 호출한다.
3. options.inJustDecodeBounds = true; 를 호출하기 전에 is.reset(); 호출한다.
감사합니다 ^_^