Cordova 相机插件 IOS 11 无法从库中选择图像
Posted
技术标签:
【中文标题】Cordova 相机插件 IOS 11 无法从库中选择图像【英文标题】:Cordova camera plugin IOS 11 impossible to pick image from library 【发布时间】:2018-05-11 21:02:39 【问题描述】:我正在使用ionic
、Xcode
和cordova-plugin-camera
访问我的iphone 库。它在 ios 11.1.2 上运行。
我想所有授权都已设置,但是当我从我的图像选择器库中单击图片时(图像选择器正在显示),我收到了这个错误:
发现扩展时遇到[discovery] 错误:Error Domain=PlugInKit Code=13 "query cancelled" UserInfo=NSLocalizedDescription=query cancelled
关注这个话题: PhotoPicker discovery error: Error Domain=PlugInKit Code=13 看来这可能是缺少权限错误。
如下所示,Info.plist
已设置,我找不到错误在哪里,有什么想法吗?
// FUNCTION TO OPEN MY IPHONE'S LIBRARY AND SELECT A PIC
$scope.takePic = function()
navigator.camera.getPicture(
function(uri)
//console.log(uri);
,
function()
$ionicPopup.alert(
title: 'Error',
template: 'Impossible'
);
,
destinationType: 1,
sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
allowEdit: false,
saveToPhotoAlbum: false,
quality: 30,
);
;
<!--LINES ADDING IN MY CONFIG.XML TO SET THE INFO.PLIST FILE -->
<edit-config target="NSCameraUsageDescription" file="*-Info.plist" mode="merge">
<string>need camera access to take pictures</string>
</edit-config>
<edit-config target="NSPhotoLibraryUsageDescription" file="*-Info.plist" mode="merge">
<string>need to photo library access to get pictures from there</string>
</edit-config>
<edit-config target="NSLocationWhenInUseUsageDescription" file="*-Info.plist" mode="merge">
<string>need location access to find things nearby</string>
</edit-config>
<edit-config target="NSPhotoLibraryAddUsageDescription" file="*-Info.plist" mode="merge">
<string>need to photo library access to save pictures there</string>
</edit-config>
<!-- BUTTON THAT IS CALLING THE FUNCTION -->
<button ng-click="takePic()" style="font-weight:300;border-radius:10px 10px 10px 10px;" class="button button-positive button-block">Take picture</button>
【问题讨论】:
我也有同样的问题。 你找到解决办法了吗? 【参考方案1】:遇到完全相同的问题。阅读文档,它指定:
NSPhotoLibraryUsageDescription 虽然此键控制对用户照片库的读写访问权限,但如果您的应用只需要向照片库添加资源而不需要读取任何资源,则最好使用 NSPhotoLibraryAddUsageDescription。
所以从技术上讲,只使用 NSPhotoLibraryUsageDescription 就足够了。尝试删除 NSPhotoLibraryAddUsageDescription 但这并没有什么不同,无论有没有它,我仍然收到相同的错误消息。
【讨论】:
是的,因为我已经发布了这个问题,不幸的是这个问题仍然存在......最后我决定使用相机拍照而不是使用用户的图书馆。现在它会工作,它只是用一张图片来设置一个头像。如果我最终找到了解决方案,我会告诉你,希望你也这样做,谢谢;) 你找到解决办法了吗? 你回去尝试使用图书馆了吗?还是只使用相机?以上是关于Cordova 相机插件 IOS 11 无法从库中选择图像的主要内容,如果未能解决你的问题,请参考以下文章
我想让用户选择使用相机拍照或从库中挑选照片(ios-swift,apple example-foodtracker)