前言

记录一下Android中如何通知扫描文件,也就是把新创建的媒体文件添加到MediaProvider中。

这里简单介绍一下个人常用的几种方式。

正文

方式一

发送广播,Intent.ACTION_MEDIA_SCANNER_SCAN_FILE是Android定义的广播。

private void scanFile(final String path){
    Intent intent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
    Uri data = Uri.parse("file://" + path);
    intent.setData(data);
    sendBroadcast(intent);
}

方式二

使用adb命令,不过也是发送广播。

public static final String ACTION_MEDIA_SCANNER_SCAN_FILE = "android.intent.action.MEDIA_SCANNER_SCAN_FILE";

发送格式

adb shell am broadcast -a ACTION_XXX -d DATA_URI

比如

隐藏内容!
评论后才能查看!

方式三

这种方式更简单,而且有扫描结束监听并返回结果。

隐藏内容!
评论后才能查看!

MediaScannerConnection还有其他用法,后面单独记录一下。

小结

目前就只用过上面几种方式,如果还有其他的,可以留言,谢谢

参考文章

相关文章

暂无评论

none
暂无评论...