如何检查文件是否已被媒体广播接收器扫描

时间:2015-11-23 10:45:35

标签: android image media broadcast scanning

我正在向媒体广播接收器发送扫描意图,以便系统“知道”该图像:

Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
File f = new File(path);
Uri contentUri = Uri.fromFile(f);
mediaScanIntent.setData(contentUri);
getActivity().sendBroadcast(mediaScanIntent);

等待扫描完成的方法是什么?有听众吗?感谢

1 个答案:

答案 0 :(得分:2)

在您的情况下,您需要使用MediaScannerConnection.scanFile,它会通过OnScanCompletedListener方法为您提供回复以侦听扫描操作。

例如

MediaScannerConnection.scanFile(
                getApplicationContext(),
                new String[]{file.getAbsolutePath()},
                null,
                new OnScanCompletedListener() {
                   @Override
                   public void onScanCompleted(String path, Uri uri) {
                      Log.v(TAG,
                            "file " + path + " was scanned seccessfully: " + uri);
                   }
                });