App does not have access to your photos or videos

2019-01-07 13:51发布

When I access my Photo Library with an UIImagePicker to choose a photo, the app shows me sometimes a black screen and sometimes a screen that says that I have to give permissions to my app to access the photos. But when I go to Settings -> Privacy -> Photos, there’s no app there and the app is nowhere to be seen in Settings. I read that I must add two values to my Info.plist but they didn’t worked either. Have anyone run with the same error? I’m working with xcode 7, swift 2.0 and iOS 9

enter image description here

This is where i prompt for user for Camera access

@IBAction func cameraButtonPressed(sender: UIButton) {

    let actionSheet = UIAlertController(title: nil, message: nil, preferredStyle: UIAlertControllerStyle.ActionSheet)

    let cancelAction = UIAlertAction(title: "Cancel", style: .Default) { (UIAlertAction) -> Void in
        self.dismissViewControllerAnimated(true, completion: nil)
    }

    let cameraAction = UIAlertAction(title: "Take Photo", style: .Default) { (UIAlertAction) -> Void in
        if UIImagePickerController.availableCaptureModesForCameraDevice(.Rear) != nil {
            self.imagePicker.allowsEditing = false
            self.imagePicker.sourceType = UIImagePickerControllerSourceType.Camera
            self.imagePicker.cameraCaptureMode = .Photo
            self.presentViewController(self.imagePicker, animated: true, completion: nil)
        } else {
            self.noCamera()
        }
    }

    let photoLibraryAction = UIAlertAction(title: "Photo Library", style: .Default) { (UIAlertAction) -> Void in
        self.imagePicker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
        self.presentViewController(self.imagePicker, animated: true, completion: nil)
    }

    actionSheet.addAction(photoLibraryAction)
    actionSheet.addAction(cameraAction)
    actionSheet.addAction(cancelAction)

    self.presentViewController(actionSheet, animated: true, completion: nil)

}

标签: ios ios9
7条回答
▲ chillily
2楼-- · 2019-01-07 14:02

I realize that this is an old question, but have one other last-ditch tip to offer...

After trying the above suggestions, I still had Camera, Photos, Music Library permissions issues on an iPod touch running iOS 9.3. The Settings app > Privacy > Photos listed no apps (neither did Privacy > Camera, or Privacy > Media Library). The Settings app did not contain a row for my app, so there was no way for customers to change my app's Privacy permissions.

The solution was to open the Settings app > General > Reset, then tap Reset Location & Privacy. Apparently, my device's privacy settings had somehow become corrupted. After the reset, all these issues were resolved.

查看更多
Anthone
3楼-- · 2019-01-07 14:05

This issue appear in iOS 9 when your application Info.plist file contains a key: "CFBundleDisplayName" with empty string value.

You can enter your app name there and it should work.

查看更多
\"骚年 ilove
4楼-- · 2019-01-07 14:05

If you are getting this screen there are probably below reasons and solutions :

1.If you are not getting access permission alert.

Solution : 1. Add CFBundleDisplayName and its value as you application title or anything you want. 2. Add NSPhotoLibraryUsageDescription in info.plist file

2.Check your Settings -> Privacy -> Photos, privacy is disabled or enable.

Solution : Enable privacy for photos.

3.If you are working on simulator and have already added CFBundleDisplayName not getting alert for photo access.

Solation : Make sure Xcode you are using must be in Application folder to get permission access alert.

查看更多
相关推荐>>
5楼-- · 2019-01-07 14:09

In info.plist, "Bundle display name" field can not be empty.

Example

查看更多
唯我独甜
6楼-- · 2019-01-07 14:16

For those still getting this error in iOS 10, it is a question of new Privacy settings implemented in iOS 10.

Basically, in the Info.plist, you have to state why you want to access the Photo library by setting the Privacy - Photo Library Usage Description key (note, this can be left to a blank string).

More about it here: http://useyourloaf.com/blog/privacy-settings-in-ios-10/

查看更多
▲ chillily
7楼-- · 2019-01-07 14:18

FOR iOS10 In info.plist

"CFBundleDisplayName" enter your app name

<key>CFBundleDisplayName</key>
<string>IMS Food-taxi</string> 

and "NSPhotoLibraryUsageDescription" add description

<key>NSPhotoLibraryUsageDescription</key>
<string>you will need to give the app permission to use the Photos.</string>
查看更多
登录 后发表回答