안드로이드에서 사진 가져오기
image
android
안드로이드에서 사진을 가져오고 싶은데요. 구글링을 해보면 전부 Intent로 갤러리를 띄워서 원하는 사진을 선택하면 해당 사진을 가져오는 가져오는 방식만 나오던데 제가 원하는건 그런게 아니라 디바이스에 있는 모든 이미지 파일을 긁어오는 방식을 원하는데 어떻게 하면 좋을까요?
-
2016년 02월 11일에 작성됨
댓글달기
조회수 1049
1 답변
구글링해서 모든 이미지 파일 가져오기 라고 검색했더니 이런 자료가 나왔습니다.
private ArrayList<String> getPathOfAllImages()
{
ArrayList<String> result = new ArrayList<>();
Uri uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
String[] projection = { MediaColumns.DATA, MediaColumns.DISPLAY_NAME };
Cursor cursor = getContentResolver().query(uri, projection, null, null, MediaColumns.DATE_ADDED + " desc");
int columnIndex = cursor.getColumnIndexOrThrow(MediaColumns.DATA);
int columnDisplayname = cursor.getColumnIndexOrThrow(MediaColumns.DISPLAY_NAME);
int lastIndex;
while (cursor.moveToNext())
{
String absolutePathOfImage = cursor.getString(columnIndex);
String nameOfFile = cursor.getString(columnDisplayname);
lastIndex = absolutePathOfImage.lastIndexOf(nameOfFile);
lastIndex = lastIndex >= 0 ? lastIndex : nameOfFile.length() - 1;
if (!TextUtils.isEmpty(absolutePathOfImage))
{
result.add(absolutePathOfImage);
}
}
for (String string : result)
{
Log.i("PhotoSelectActivity.java | getPathOfAllImages", "|" + string + "|");
}
return result;
}
-
2016년 02월 11일에 작성됨