안녕하세요.
제목에서 처럼 파일 객체를 비트맵으로 변환하려하는데 BitmapFactory.decodeFile함수가 널을 뱉어요.
case OKGlobalProperties.CAMERA_REQUEST_TYPE_PHOTO_GALLERY :
List<Uri> uriList = data.getParcelableArrayListExtra("uris");
for (int i = 0; i < uriList.size(); i++) {
File f = new File(uriList.get(i).toString().replaceAll("^file\\:\\/\\/", ""));
Bitmap bitmap1 = BitmapFactory.decodeFile(f.getAbsolutePath());
Log.e("bitmap1", bitmap1.toString());
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
Bitmap bitmap2 = BitmapFactory.decodeFile(f.getAbsolutePath(), options);
Log.e("bitmap1", bitmap2.toString());
위와같은데요
uriLst는 file://로 구성된 사용자가 앨범에서 선택한 Uri 값들이구요.
여기서 file:// 잘라서 파일 f로 객체를 만듭니다.
문제는 이 파일 경로를 바탕으로 Bitmap을 얻어보려고 BitmapFactory.decodeFile()함수를 사용했는데,
단순히 패스만을 전달하는 bitmap1은 생성이 되지만, options를 넣어 사용한 bitmap2는 생성이 되질 않고 null을 리턴하는 문제가 있습니다.
해당 상황에 대해 알고계신게 있으시다면 조언부탁드립니다. (__)