2012-09-24 1 views
0

안녕하세요, 비트 맵 클래스로 내 이미지를로드 할 수 없습니다 : (!하여 파일이 존재)내가 비트 맵에 문제가 여기에있는 사진이 안드로이드

file:///mnt/sdcard/Android/data/com.dev.app/files/Pictures/20120924-092226.jpg 

그래서 난이 URL 문자열을이를

는 지금은 비트 맵을 얻을 필요, 그래서 내가 할 :

String str = "file:///mnt/sdcard/Android/data/com.dev.app/files/Pictures/20120924-092226.jpg"; 
Bitmap b = BitmapFactory.decodeFile(str); 

을하지만 B는 항상 null입니다. 그리고 나는 이유를 모른다.

편집 :이 같은 코드를 사용하기 전에 파일을 만듭니다

String filename = DateFormat.format("yyyyMMdd-hhmmss",Calendar.getInstance().getTime()) + ".jpg"; 

Uri imageUri = helper.createImageDestinationUri(null, filename); 

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri); 
startActivityForResult(intent, requestCode); 
+0

Environment.getExternalStorageDirectory를 사용해보십시오 ... 희망이 도움이(). getPath()를 만든 폴더 –

답변

0

  1. 파일이 잘못된 형식, 즉 확장 있지만입니다 두 가지 가능성이 있습니다. jpg는 jpeg 파일이 아닙니다.
  2. 파일을로드 할 수 없습니다.

무슨 일이 일어나는지 보려면 adb 로그를 자세히 살펴보십시오. 도움이되지 않는 경우 다음을 시도하십시오.

파일을 드로어 블 폴더에 추가하고 일부 테스트 화면에서 사용하십시오. 파일이 표시되면 파일 형식이 올바르므로 안드로이드가 파일을로드 할 수 없습니다. 권한을 확인하고 FileInputStream을 사용하여 먼저 파일을 읽으십시오.

파일이 여전히 표시되지 않으면 형식이 잘못되었음을 확신 할 수 있습니다. 이 경우 다른 이미지 파일을 사용해보십시오.

관련 문제