Android之扫描文件或文件夹

我们或许经常会遇到这种情况,明明保存了图片,但是当你打开图片时,却没有找到这张图片,手机重启之后才能看到。这是因为SD卡并没有重新挂载,图库也无法把这张图片加载进去,解决这个问题非常简单,只需要我们重新扫描文件或文件夹即可!

实现代码如下:

    //扫描文件
    public static void fileScan(Activity activity,String file){   
        Uri data = Uri.parse("file://"+file);   
        activity.sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, data));   
    }   
    //扫描文件夹
    public static void folderScan(Activity activity,String path){   
        File file = new File(path);   

        if(file.isDirectory()){   
            File[] array = file.listFiles();   

            for(int i=0;i<array.length;i++){   
                File f = array[i];   

                if(f.isFile()){//FILE TYPE   
                    String name = f.getName();   

                if(name.contains(".mp3")){   
                    fileScan(activity,f.getAbsolutePath());   
                }   
                }   
                else {//FOLDER TYPE   
                    folderScan(activity,f.getAbsolutePath());   
                }   
            }   
        }   
    }  
原文地址:https://www.cnblogs.com/huangzhen22/p/5126233.html