2014-09-23 6 views
1

내 코드 :왜 BitmapFactory.decodeFile이 null을 반환합니까?

BitmapFactory.Options opt = new BitmapFactory.Options(); 
opt.inJustDecodeBounds = true; 
Bitmap rotateBmp = BitmapFactory.decodeFile("/storage/sdcard0/FastBurstCamera/2014-09-15 05-24-07-461.jpg", opt); 

파일/저장/sdcard0/FastBurstCamera/2014년 9월 15일 05-24-07-461.jpg는 존재하지만 rotateBmp가 null의 경우, 그 이유는 무엇입니까?

답변

3

파일/storage/sdcard0/FastBurstCamera/2014-09-15 05-24-07-461.jpg가 있지만 rotateBmp가 null 인 이유는 무엇입니까?

귀하가 요청한 것이기 때문입니다.

the documentation for decodeFile() (강조 추가) 인용 :

디코딩 된 비트 맵 또는 null 화상 데이터를 복호화하거나 크기 만이 리턴 요청한 것으로 선택하면 OPTS 경우, 비 - 널 수없는 경우 (opts.outWidth 및 opts.outHeight에)

the documentation for inJustDecodeBounds을 인용 :

하는 경우 true로 설정하면 디코더는 null (비트 맵 없음)을 반환하지만 out ... 필드는 여전히 설정되어 호출자가 픽셀에 메모리를 할당하지 않고도 비트 맵을 쿼리 할 수 ​​있습니다.

+0

귀하의 제안에 따라 친절하게 답변 드리며, "opt.inJustDecodeBounds = true;"를 삭제 한 다음 작동합니다. 다시 감사합니다! –

2
  • 이미지 크기가 클 수 있습니다. this question을 확인하십시오.
  • 또 다른 이유는 READ_EXTERNAL_STORAGE 및/또는 WRITE_EXTERNAL_STORAGE 권한을 매니페스트 파일에 추가하지 않았기 때문일 수 있습니다. 추가 했습니까?
관련 문제