Camera 从iOS9中未显示的库中拍照或获取图像的权限(Xcode 7beta,Swift2)

Camera 从iOS9中未显示的库中拍照或获取图像的权限(Xcode 7beta,Swift2),camera,swift2,ios9,Camera,Swift2,Ios9,下面的代码显示了我访问图像库的示例。无论我在哪里调用代码(视图),我都看不到手机弹出的权限对话框,因此无法允许我的应用程序访问相机或库 此外,隐私设置也不会显示我的应用程序。有什么想法吗?我快发疯了 let imgPicker = UIImagePickerController() imgPicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary imgPicker.modal

下面的代码显示了我访问图像库的示例。无论我在哪里调用代码(视图),我都看不到手机弹出的权限对话框,因此无法允许我的应用程序访问相机或库

此外,隐私设置也不会显示我的应用程序。有什么想法吗?我快发疯了

       let imgPicker = UIImagePickerController()
        imgPicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
        imgPicker.modalPresentationStyle = UIModalPresentationStyle.Popover
        self.presentViewController(imgPicker, animated: true, completion: nil)

我试过的另一种方法

            if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera) {
                let imagePicker:UIImagePickerController = self.imagePickerController

                imagePicker.allowsEditing       =   true
                imagePicker.sourceType          =   UIImagePickerControllerSourceType.Camera
                imagePicker.cameraCaptureMode   =   UIImagePickerControllerCameraCaptureMode.Photo
                imagePicker.cameraDevice        =   UIImagePickerControllerCameraDevice.Rear
                imagePicker.showsCameraControls =   true
                imagePicker.navigationBarHidden =   true
                imagePicker.toolbarHidden       =   true
                imagePicker.delegate = self

            self.presentViewController(imagePicker, animated: true, completion: nil)
            }

显然,这似乎是iOS9的一个问题。由于某些原因,“权限访问”对话框不会弹出。我已经使用相同的代码成功地在iOS8上进行了测试

您需要设置一对新的Info.plist值,与iOS8中位置服务的字符串相同:

只需为这些设置描述字符串

检查info.plist

如果“捆绑显示名称”设置为空

在iOS 8.1中,将弹出如下权限窗口

“”要访问您的照片吗

但在iOS 9上,根本没有弹出权限

另外,在“设置>隐私>照片>应用程序名”中,没有权限设置

为了解决这个问题,

删除info.plist中的“Bundle display name”


你对此有解决方案吗?没有。我现在回到iOS 8。没有时间处理这些问题。抱歉。@DirkLX您对此进行了修复了吗?这不是解决方案。我的包没有开始显示名称,因此存在此问题。那该怎么办?我无法评论将其全部删除是否是正确的方法,但我只是在“字符串”区域填写了应用程序的实际名称,works。这肯定是一个错误的答案。正确答案是@longbow所说的,您必须填写适当的info.plist字符串。