티스토리 뷰
아래와같이 작성하면 외부저장소에 있는 이미지파일에 대한 정보를 일괄적으로 얻을 수 있다.
import android.database.Cursor; ArrayList<String> thumbsIDs = new ArrayList<String>(); if (imageCursor != null && imageCursor.moveToFirst()){ int thumbsIDCol = imageCursor.getColumnIndex(MediaStore.Images.Media._ID); Log.d("test", "thumbsID : "+thumbsID); |
아래와 같은 Uri를 위 코드중 굵은부분에 배치 시키면 미디어종류(이미지,비디오,오디오,앨범,썸네일)에따라 불러오는 리스트를 달리 할 수 있다.(커서로 받아오는것도 바꾸어야겠지ㅎ)
MediaStore.Images.Media.INTERNAL_CONTENT_URI MediaStore.Images.Media.EXTERNAL_CONTENT_URI MediaStore.Audio.Media.INTERNAL_CONTENT_URI MediaStore.Audio.Media.EXTERNAL_CONTENT_URI MediaStore.Video.Media.INTERNAL_CONTENT_URI MediaStore.Video.Media.EXTERNAL_CONTENT_URI MediaStore.Audio.Albums.INTERNAL_CONTENT_URI MediaStore.Audio.Albums.EXTERNAL_CONTENT_URI MediaStore.Video.Thumbnails.INTERNAL_CONTENT_URI MediaStore.Video.Thumbnails.EXTERNAL_CONTENT_URI |
다만 INTERNAL 의 경우에는 SD카드처럼 자유로이 사용이 힘든점이있다.
밑에 정보들도 참고하자.
//겔러리 정보저장File file=new File(getContext().getFilesDir().getAbsolutePath()+"/"+fileName); ContentValues values=new ContentValues(); values.put(MediaStore.Images.Media.TITLE,fileName); values.put(MediaStore.Images.Media.MIME_TYPE,"image/jpeg"); values.put("_data",file.getAbsolutePath()); ContentResolver contentResolver=getContext().getContentResolver(); contentResolver.insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values); //겔러리 정보검색 ContentResolver cr=getContentResolver();
Cursor c=cr.query(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, null,null,null,null);
c.moveToFirst();
for (int i=0;i<c.getCount();i++) {
for (String column:c.getColumnNames()) {
android.util.Log.e("",column+"="+
c.getString(c.getColumnIndexOrThrow(column)));
}
c.moveToNext();
} |
'Development' 카테고리의 다른 글
[Java] 배열정렬 (파일명과 날짜) (0) | 2011.11.28 |
---|---|
[Java] List 와 배열 변환 (0) | 2011.11.15 |
[Android] 내부저장 메모리 이용 (0) | 2011.11.04 |
[Android] 파일 입출력 (0) | 2011.11.04 |
[Android] ViewFlipper (0) | 2011.10.31 |
- Total
- Today
- Yesterday