1

我设法将文件下载到本地存储,但我无法将它的路径传递给媒体扫描仪,因此它被添加到图库中。

我添加了一个执行媒体扫描仪工作的插件。试图做到这一点的功能就是这个。

private boolean mediaScanner(String absolutePath, CallbackContext callbackContext)  throws InterruptedException, JSONException
{
      Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE);
      String path = Uri.parse(absolutePath).getPath();
      File f = new File(path.substring(path.indexOf('/', 1)));
      mediaScanIntent.setData(Uri.fromFile(f));
      this.cordova.getActivity().sendBroadcast(mediaScanIntent);
      return true;
}

绝对路径参数是来自 javascript 的 file.toURL()。这是一个看起来像这样的网址。cdvfile://localhost/persistent/Download/13republica_personal.jpg

我试图将其修改为 /Download/13republica_personal.jpg 但它不起作用。

我应该如何将文件 url/位置传递给媒体扫描仪,以便将文件添加到库中?

4

1 回答 1

0

最终使用了 phonegap 文件插件的最后一个开发人员版本,并使用文件对象的 toLocalURL 方法作为媒体扫描仪的参数。

于 2014-04-01T21:32:59.533 回答