phonegap resolveLocalFileSystemURL不适用于android上的内容uri

phonegap resolveLocalFileSystemURL不适用于android上的内容uri,android,image,cordova,uri,webintents,Android,Image,Cordova,Uri,Webintents,我想在安卓5.1.1版上使用Nexus 4手机从安卓图像库接收共享图像。我正在使用phonegap 4.2、phonegap WebIntent插件和phonegap文件插件 文本和链接工作正常,但当我尝试共享Android gallery中的图像时,我得到了如下URI: content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F

我想在安卓5.1.1版上使用Nexus 4手机从安卓图像库接收共享图像。我正在使用phonegap 4.2、phonegap WebIntent插件和phonegap文件插件

文本和链接工作正常,但当我尝试共享Android gallery中的图像时,我得到了如下URI:

content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F63131/ACTUAL

而不是像file:///....

我尝试使用window.resolveLocalFileSystemURL函数解析此url,该url使用fileEntry对象返回成功。然而,当我试图使用它来读取文件时,我得到了一个错误,代码为1000(请参阅下面的代码和输出)

有趣的是,如果通过img标签显示这个url,我可以很好地看到图像

<img src="" id="test_intent_image">
$('#test_intent_image').attr("src",uri);
}

以下是我尝试从图像库共享图像时代码的控制台输出:

handle share stream :"content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F63087/ACTUAL"
file entry: {
   "isFile": true,
   "isDirectory": false,
   "name": "ACTUAL",
   "fullPath": "/com.google.android.apps.photos.contentprovider/0/1/content%3A//media/external/images/media/63087/ACTUAL",
   "filesystem": "<FileSystem: content>",
   "nativeURL": "content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F63087/ACTUAL"
}
file read error: 1000
处理共享流:content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F63087/ACTUAL"
文件条目:{
“isFile”:true,
“isDirectory”:错误,
“名称”:“实际”,
“完整路径”:“/com.google.android.apps.photos.contentprovider/0/1/content%3A//media/external/images/media/63087/ACTUAL”,
“文件系统”:“,
“nativeURL”:content://com.google.android.apps.photos.contentprovider/0/1/content%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F63087/ACTUAL"
}
文件读取错误:1000
以下是AndroidManifest.xml文件中的意图过滤器。注意:共享工作正常,只是无法解析URL,所以这可能不是问题

<intent-filter>
<action android:name="android.intent.action.SEND" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="*/*" />
        </intent-filter>

我也遇到了同样的问题,没有使用标准文件插件的直接解决方案

我尝试了这个插件,但是它只适用于android内容uri

您改用此函数,它似乎正在工作


window.FilePath.resolveNativePath('content://...,successCallback,errorCallback)

关于这一点,Cordova网站上有一个公开的bug


刚刚尝试了你的建议,效果很好!谢谢你,老兄!您好,我已经安装了插件,然后运行它,但是为什么总是出现错误
无法调用方法'ResolveNativePath'
,错误在哪里?我在这里还提出了一个线程问题调用方法ResolveNativePath,谢谢
<intent-filter>
<action android:name="android.intent.action.SEND" />
            <category android:name="android.intent.category.DEFAULT" />
            <data android:mimeType="*/*" />
        </intent-filter>