0
我試圖構建一個功能,將最新保存的圖像從設備加載到應用程序中。 目前我使用此路徑DCIM/Camera/
,但它只存儲攝像頭拍攝的圖像。有沒有存儲所有圖像的文件夾? (屏幕截圖,從網絡或照相機卷中保存的圖像)所有圖像的Android文件夾路徑
我試圖構建一個功能,將最新保存的圖像從設備加載到應用程序中。 目前我使用此路徑DCIM/Camera/
,但它只存儲攝像頭拍攝的圖像。有沒有存儲所有圖像的文件夾? (屏幕截圖,從網絡或照相機卷中保存的圖像)所有圖像的Android文件夾路徑
不用在文件夾中搜索圖像,您可以讓系統爲您負責。
Android會自行索引大多數媒體數據(圖片,音樂等),並提供Content Providers來查詢這些數據庫。可以使用MediaStore.Images.Media
-provider。
public List<String> getImagePaths(Context context) {
// The list of columns we're interested in:
String[] columns = {MediaStore.Images.Media.DATA, MediaStore.Images.Media.DATE_ADDED};
final Cursor cursor = context.getContentResolver().
query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, // Specify the provider
columns, // The columns we're interested in
null, // A WHERE-filter query
null, // The arguments for the filter-query
MediaStore.Images.Media.DATE_ADDED + " DESC" // Order the results, newest first
);
List<String> result = new ArrayList<String>(cursor.getCount());
if (cursor.moveToFirst()) {
final int image_path_col = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
do {
result.add(cursor.getString(image_path_col));
} while (cursor.moveToNext());
}
cursor.close();
return result;
}
該方法將返回當前由MediaStore與最新的第一個索引的所有圖像的圖像路徑的列表。您需要獲得android.permission.READ_EXTERNAL_STORAGE
的許可才能使用!
posibble重複http://stackoverflow.com/questions/26751041/android-external-sdcard-dcim-folder-path – JozeRi
我沒有看到任何投降或關閉它的理由。而@JozeRi你的副本也不適合。 –