Ios 在img标签cordova中显示带有cdvfile://*的图像

Ios 在img标签cordova中显示带有cdvfile://*的图像,ios,cordova,cordova-plugins,phonegap,cordova-plugin-camera,Ios,Cordova,Cordova Plugins,Phonegap,Cordova Plugin Camera,我正在使用cordova插件相机拍摄具有以下选项的照片: quality: 100, destinationType: Camera.DestinationType.NATIVE_URI, sourceType: srcType, encodingType: Camera.EncodingType.JPEG, mediaType: Camera.MediaType.PICTURE, allowEdit: false, saveToPhotoAlbum: true, correctOrientat

我正在使用cordova插件相机拍摄具有以下选项的照片:

quality: 100,
destinationType: Camera.DestinationType.NATIVE_URI,
sourceType: srcType,
encodingType: Camera.EncodingType.JPEG,
mediaType: Camera.MediaType.PICTURE,
allowEdit: false,
saveToPhotoAlbum: true,
correctOrientation: true
这是可行的,我得到的URL/路径如下:

assets-library://asset/asset.JPG?id=FBA79210-5E65-4C9B-BF19-9F1169B777C0&ext=JPG
然后,我想将此路径转换为cdvfile://以在标记中显示图像

window.resolveLocalFileSystemURL(imageURI, function(fileEntry) {
        const url = fileEntry.toInternalURL()
})
这也是可行的,我得到:

cdvfile://localhost/assets-library/asset/asset.JPG?id=FBA79210-5E65-4C9B-BF19-9F1169B777C0&ext=JPG
但图像不会被渲染。我试图在我的config.xml中添加
,但这也不起作用。如何获取显示图像的有效路径/url

致以最良好的祝愿,
乔里

我遇到了同样的问题,并设法用不同的方法解决了它。在获得
cdvfile
url后,我使用
getPhoto
方法通过
cdvfile
url中存在的
id
来获取blob文件,并使用此方法获得
img
源代码,使用
base64data
,如下所示:

photoLibrary.getPhoto('FBA79210-5E65-4C9B-BF19-9F1169B777C0').then((blob)=>{

   var reader = new FileReader();
   reader.readAsDataURL(blob); 
   reader.onloadend = function() {
      var base64data = reader.result;                
      img.src = base64data;
   }
});
更新
您还可以使用
getThumbnail
功能,根据应用程序应该处理的照片的质量、大小和数量来改进页面加载。

这方面运气好吗?我还试图用readAsDataURL(文件插件)加载数据URL,但在路径或文件参数方面没有成功。