마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

기본앨범에서 이미지 받아오는 문제좀 부탁드립니다

0 추천
// 앨범 호출
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType(android.provider.MediaStore.Images.Media.CONTENT_TYPE);
intent.setData(android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, PICK_FROM_ALBUM);

//앨범 받아오기
case PICK_FROM_ALBUM: {

                String name = getImageNameToUri(data.getData());
                Bitmap image_bitmap     = null;
                try {
                    image_bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), data.getData());
                    userImgArray.get(intentCheck).setImageBitmap(image_bitmap);
                } catch (IOException e) {
                    e.printStackTrace();
                }
   break;

}

 

//URI  Path 변경

 

 private String getImageNameToUri(Uri data)
    {
        String[] proj = { MediaStore.Images.Media.DATA };
        Cursor cursor = managedQuery(data, proj, null, null, null);
        int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);

        cursor.moveToFirst();

        String imgPath = cursor.getString(column_index);
        String imgName = imgPath.substring(imgPath.lastIndexOf("/") + 1);

        return imgName;
    }

 

 

사진을 받아오는 소스인데요.

기본 사진앨범에 있는 이미지 값을 들고오지 못하네요(외부 사진앨범들은 잘 들어옵니다)

어떻게 해결할 방법이 없나요 ?...
New개발자 (510 포인트) 님이 2015년 12월 9일 질문

1개의 답변

0 추천
startManagingCursor(cursor);

이거를 path받아오는 ㅂ분에 넣어보시죠
꿀떡 (2,700 포인트) 님이 2015년 12월 9일 답변
답변 감사드립니다 !
path 받는부분 어디쪽을 말씀하시는지 잘 모르겠습니다.
uri를 path 로 변경할때의 메소드에 넣어라는 말씀이신가요 ..?
private String getPath(Uri uri) {
        String[] projection = { MediaStore.Images.Media.DATA };
        Cursor cursor = managedQuery(uri, projection, null, null, null);
        startManagingCursor(cursor);
        int columnIndex = cursor
                .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();
        return cursor.getString(columnIndex);
    }


이게 제가한 path가져오는 코드인데 전 잘됬거든요
안되면 말씀해주세요~코드 보내드릴게요


앨범가져오는건 이렇게했어요~

case PHOTO_FROM_ALBUM:
                uri = data.getData();
                File orignFile = getImageFile(uri);
                uri = createSaveCropFile();
                File copyFile = new File(uri.getPath());
                boolean result = copyFile(orignFile, copyFile);
좋은 답변 감사합니다 !!!!
찾는도중에 괜찮은 라이브러리 있길래 그걸로 했습니다 신경 써주셔셔 정말 감사합니다 !!!
...