2017-01-01 54 views
1

所以我有這樣的代碼獲取圖像與mediastore:如何設置MEDIASTORE從特定的文件夾獲取圖像的Android

int dataIndex = mMediaStoreCursor.getColumnIndex(MediaStore.Files.FileColumns.DATA); 

mMediaStoreCursor.moveToPosition(position); 
String dataString = mMediaStoreCursor.getString(dataIndex); 
Uri mediaUri = Uri.parse("file://" + dataString); 
return mediaUri; 

這家獲得在圖片文件夾中的所有影像,我想改變這種狀況獲取特定文件夾中的所有圖像,這些文件將作爲字符串傳入。 e.g { android/picture/specificfolder/}

+0

[Uri.parse(「file://」+ ???);訪問特定文件夾](http://stackoverflow.com/questions/43335103/uri-parsefile-to-access-specific-folder) – fadysi92

回答

0

入住這post

它建議你使用遊標,並通過投影所需的文件夾。

從德交相關答案:

mediaCursor = getContentResolver().query(MediaStore.Files.getContentUri("external"), 
 
       null, 
 
       MediaStore.Images.Media.DATA + " like ? ", 
 
       new String[] {"%YOUR_FOLDER_NAME%"}, 
 
       null);

0

你可以用下面的方法 -

public List<String> getFromSdcard() 
{ 
    ArrayList<String> imagePaths = new ArrayList<String>();// list of file paths 
    File[] listFile; 
    File file= new 

    File(android.os.Environment.getExternalStorageDirectory(),"android/picture/specificfolder/"); 

    if (file.isDirectory()) 
    { 
     listFile = file.listFiles(); 


     for (int i = 0; i < listFile.length; i++) 
     { 

      imagePaths.add(listFile[i].getAbsolutePath()); 

     } 
    } 
    return imagePaths; 
} 

中檢索圖像使用

List<String> sample = getFromSdcard(); 

    for(int i=0; i<sample.size() ; i++){ 
     final Uri image = Uri.parse("file://"+sample(i).toString()); 
    } 
相關問題