天天看點

android 掃描指定檔案,Android掃描指定檔案和目錄

1.啟動MediaScanner服務,掃描媒體檔案:

程式通過發送下面的Intent啟動MediaScanner服務掃描指定的檔案或目錄:

Intent.ACTION_MEDIA_SCANNER_SCAN_FILE:掃描指定檔案

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”:掃描指定目錄

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服務中進行的,是以不會阻塞目前程式程序。當掃描大量媒體檔案且實時性要求不高的情況下,适合使用該掃描方式。