Xcode supplies an information property list file when you create a project from a template, as described in Create a project. By default, Xcode names this file Info. plist and adds it to your project as a source file that you can edit. Xcode creates one information property list for each target in the project folder.
Thanks @rmaddy, I added this just after other key-string pairs in Info.plist and fixed the problem:
<key>NSPhotoLibraryUsageDescription</key>
<string>Photo Library Access Warning</string>
Edit:
I also ended up having similar problems on different components of my app. Ended up adding all these keys so far (after updating to Xcode8/iOS10):
<key>NSPhotoLibraryUsageDescription</key>
<string>This app requires access to the photo library.</string>
<key>NSMicrophoneUsageDescription</key>
<string>This app does not require access to the microphone.</string>
<key>NSCameraUsageDescription</key>
<string>This app requires access to the camera.</string>
Checkout this developer.apple.com link for full list of property list key references.
Full List:
Apple Music:
<key>NSAppleMusicUsageDescription</key>
<string>My description about why I need this capability</string>
Bluetooth:
<key>NSBluetoothPeripheralUsageDescription</key>
<string>My description about why I need this capability</string>
Calendar:
<key>NSCalendarsUsageDescription</key>
<string>My description about why I need this capability</string>
Camera:
<key>NSCameraUsageDescription</key>
<string>My description about why I need this capability</string>
Contacts:
<key>NSContactsUsageDescription</key>
<string>My description about why I need this capability</string>
FaceID:
<key>NSFaceIDUsageDescription</key>
<string>My description about why I need this capability</string>
Health Share:
<key>NSHealthShareUsageDescription</key>
<string>My description about why I need this capability</string>
Health Update:
<key>NSHealthUpdateUsageDescription</key>
<string>My description about why I need this capability</string>
Home Kit:
<key>NSHomeKitUsageDescription</key>
<string>My description about why I need this capability</string>
Location:
<key>NSLocationUsageDescription</key>
<string>My description about why I need this capability</string>
Location (Always):
<key>NSLocationAlwaysUsageDescription</key>
<string>My description about why I need this capability</string>
Location (When in use):
<key>NSLocationWhenInUseUsageDescription</key>
<string>My description about why I need this capability</string>
Microphone:
<key>NSMicrophoneUsageDescription</key>
<string>My description about why I need this capability</string>
Motion (Accelerometer):
<key>NSMotionUsageDescription</key>
<string>My description about why I need this capability</string>
NFC (Near-field communication):
<key>NFCReaderUsageDescription</key>
<string>My description about why I need this capability</string>
Photo Library:
<key>NSPhotoLibraryUsageDescription</key>
<string>My description about why I need this capability</string>
Photo Library (Write-only access):
<key>NSPhotoLibraryAddUsageDescription</key>
<string>My description about why I need this capability</string>
Reminders:
<key>NSRemindersUsageDescription</key>
<string>My description about why I need this capability</string>
Siri:
<key>NSSiriUsageDescription</key>
<string>My description about why I need this capability</string>
Speech Recognition:
<key>NSSpeechRecognitionUsageDescription</key>
<string>My description about why I need this capability</string>
MY FAVORITE WAY TO DO IT
1. Open info.plist
2. Click this button to add a new key
3. Scroll down to find Privacy - Photo Library Usage Description
4. Select it, then add your description on the right
Add following code in info.plist file
<key>NSPhotoLibraryUsageDescription</key>
<string>My description about why I need this capability</string>
You need to paste these two in your info.plist, The only way that worked in iOS 11 for me.
<key>NSPhotoLibraryUsageDescription</key>
<string>This app requires access to the photo library.</string>
<key>NSPhotoLibraryAddUsageDescription</key>
<string>This app requires access to the photo library.</string>
For camera access use:
<key>NSCameraUsageDescription</key>
<string>Camera Access Warning</string>
As of now August 2021, not only we have to add this :
<key>NSPhotoLibraryUsageDescription</key>
<string>We need access to photo library so that photos can be selected</string>
but also need to add this to info.plist file inside iOS folder in order to work properly
<key>NSPhotoLibraryAddUsageDescription</key>
<string>This app requires access to the photo library.</string>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With