我的应用程序将 .jpg 文件 move 到其他文件夹并在库存库中查看我有 sendBroadcast ACTION_MEDIA_MOUNTED

    sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" +
            Environment.getExternalStorageDirectory() )));

但这需要很多时间..我已经理解(也许)我必须直接在 mediaStore 中使用 cursor/contentResolver 手动更新才能更快地完成此操作。谁可以帮我这个事?谢谢..
我的代码实际上是:
 Uri uri = (Uri) list.get(cont);
 Cursor cursor = managedQuery(uri, proj, null, null, null);
 int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
 cursor.moveToFirst();
 String app = cursor.getString(column_index);
 File orig =  new File( app.toString());
 File dest = new File( destination_path +"/"+ orig.getName().toString());
 orig.renameTo(dest);

有了这个,我将文件从一个路径 move 到另一个路径。

在此之后,在图库中获取图像
我必须发送广播 ACTION_MEDIA_MOUNTED

最佳答案

我只需要做同样的事情,使用以下更新 MediaStore :

ContentValues values = new ContentValues();
values.put(MediaStore.MediaColumns.DATA, newPath);
boolean successMediaStore = context.getContentResolver().update(
    MediaStore.<TYPE>.Media.EXTERNAL_CONTENT_URI, values,
    MediaStore.MediaColumns.DATA + "='" + oldPath + "'", null) == 1;

<TYPE> 替换为正确的媒体存储...( ImagesVideoAudio ...)

10-07 19:25
查看更多