App does not have access to your photos or videos iOS 9

不问归期 提交于 2019-11-26 11:02:13

问题


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

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)

}

回答1:


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.




回答2:


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

Example




回答3:


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.




回答4:


it is very simple,

just go in

simulator -> hardware -> Home

then in phone's settings -> in your app -> now allow by move switch option like below image




回答5:


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/




回答6:


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.




回答7:


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>


来源:https://stackoverflow.com/questions/32768012/app-does-not-have-access-to-your-photos-or-videos-ios-9

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!