您的位置:首页 > 移动开发 > Android开发

android通知扫描某个文件或者文件夹(图库及时更新图片)

2015-07-08 14:25 573 查看
1.启动MediaScanner服务,扫描媒体文件:

程序通过发送下面的Intent启动MediaScanner服务扫描指定的文件或目录:

Intent.ACTION_MEDIA_SCANNER_SCAN_FILE:扫描指定文件

1
2
3
4
5

public void scanFileAsync(Context ctx, String filePath) {
              Intent scanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
              scanIntent.setData(Uri.fromFile(new File(filePath)));
              ctx.sendBroadcast(scanIntent);
       }

“android.intent.action.MEDIA_SCANNER_SCAN_DIR”:扫描指定目录

1
2
3
4
56

public static final String ACTION_MEDIA_SCANNER_SCAN_DIR = "android.intent.action.MEDIA_SCANNER_SCAN_DIR";
       public void scanDirAsync(Context ctx, String dir) {
              Intent scanIntent = new Intent(ACTION_MEDIA_SCANNER_SCAN_DIR);
              scanIntent.setData(Uri.fromFile(new File(dir)));
              ctx.sendBroadcast(scanIntent);
       }

这种扫描方式中,由于扫描工作是在MediaScanner服务中进行的,因此不会阻塞当前程序进程。当扫描大量媒体文件且实时性要求不高的情况下,适合使用该扫描方式。

2.想让某个文件夹不让扫描

在需要隐藏的目录建立一个文件名为“.nomedia”的空白文件

重新打开图库等软件看看,那个目录就不会被扫描了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: