获取相机的当前图片文件夹

2re*_*d13 8 camera android

我的应用程序中有一个小的FileExplorer,我希望他从目前defautl相机使用的文件夹开始.有办法走这条路吗?我试过:

Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_PICTURES).getAbsolutePath());
Run Code Online (Sandbox Code Playgroud)

但这不会返回"/ mnt/sdcard/Pictures",我的相机存储在"mnt/sdcard/ext_sd/DCIM/100MEDIA /"中

PS:我知道如何使用特定文件夹启动相机来存储图片,这不是我要搜索的内容,

2re*_*d13 4

String[] projection = new String[]{MediaStore.Images.ImageColumns._ID,MediaStore.Images.ImageColumns.DATA,MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,MediaStore.Images.ImageColumns.DATE_TAKEN,MediaStore.Images.ImageColumns.MIME_TYPE};     
final Cursor cursor = managedQuery(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,projection, null, null, MediaStore.Images.ImageColumns.DATE_TAKEN + " DESC"); 
if(cursor != null){
    cursor.moveToFirst();
    // you will find the last taken picture here
    // according to Bojan Radivojevic Bomber comment do not close the cursor (he is right ^^)
    //cursor.close();
}
Run Code Online (Sandbox Code Playgroud)

  • 这不会仅返回用相机拍摄的图像 (3认同)
  • 我认为您仍然需要在析构函数方法中关闭游标,例如 Activity 中的 onDestroy() ,否则您可能会收到游标终结错误。 (2认同)