很多时候,我们会对文件进行一系列的操作,比如:copy、move、create、delete等。当操作完成之后,如果不进行数据库的扫描更新,在某些第三方应用中是无法查看到你操作的文件的。
当然,你可以重启手机。因为重启之后,MeidaScannerReciver会收到开机完成广播,然后进行全盘的数据库扫描。
但是,如果用户想实时的查看到被操作的文件,这时候就需要实时的扫描媒体文件重新更新数据库。
这里提供一个方法。用于操作完成后调用:
private static final String VOLUME = "volume";
private static final String EXTERNAL = "external";
public void doMediaScan() {
Bundle args = new Bundle();
args.putString(VOLUME, EXTERNAL);
Intent startScan = new Intent();
startScan.putExtras(args);
startScan.setComponent(new ComponentName("com.android.providers.media",
"com.android.providers.media.MediaScannerService"));
startService(startScan);
}
网友评论