We have discovered one or more issues with your recent delivery for "Myapp". To process your delivery, the following issues must be corrected:
This app attempts to access privacy-sensitive data without a usage description. The app's
Info.plist
must contain anNSCalendarsUsageDescription
key with a string value explaining to the user how the app uses this data.This app attempts to access privacy-sensitive data without a usage description. The app's
Info.plist
must contain anNSBluetoothPeripheralUsageDescription
key with a string value explaining to the user how the app uses this data.Once these issues have been corrected, you can then redeliver the corrected binary.

- 115,751
- 26
- 228
- 437

- 135
- 2
- 10
5 Answers
As per the Docs
Maintaining user privacy is an important consideration when designing your app. Most iOS, watchOS, and tvOS devices contain data that users might not want to expose to apps or external entities. Access user data only with the user’s informed consent, and be transparent about how you use it.
Your app is responsible for all usage of privacy-sensitive data, including access to this data by all third party libraries used in your app. If your app attempts to access privacy-sensitive data without a usage description, your app will exit. Additionally, App Review checks for use of privacy-sensitive data, and rejects apps that request access to this data without a usage description. Listing 1 shows an example of such a rejection.
In order to resolve this you have to mention the usage description of this 2 in your .plist
NSBluetoothPeripheralUsageDescription
NSCalendarsUsageDescription
like this
<key>NSCalendarsUsageDescription</key>
<string>This app wants to access Calendar</string>
Check image for reference

- 10,977
- 3
- 38
- 55
Contacts, Calendar, Reminders, Photos, Bluetooth Sharing, Microphone, Camera, Location, Health, HomeKit, Media Library, Motion, CallKit, Speech Recognition, SiriKit, TV Provider.
If you are using one of these frameworks and fail to declare the usage your app will crash when it first makes the access.
To avoid the crash we need to add the suggested key to ‘Info.plist’.
here is complete list of Cocoa Keys
In your case, you need to add "NSCalendarsUsageDescription" and "NSBluetoothPeripheralUsageDescription" in your .plist file.
Then again try to upload the build file on App-Store.

- 4,264
- 1
- 27
- 49
-
CallKit doesn't have authorization – user102008 Oct 25 '16 at 17:39
just add two keys NSCalendarsUsageDescription
and NSBluetoothPeripheralUsageDescription
in your info.plist
and write it's description
as it's value
in it that should have string message that how your app use this data!!
refer below screenshot,
Likewise add NSCalendarsUsageDescription
also. You can add new key - value
by clicking +
beside information property list.

- 27,092
- 9
- 50
- 75
Starting from iOS 10 and above, you'll need to add a description (reason) for using system resources via Cocoa Keys .
The app's Info.plist must contain an NSCalendarsUsageDescription key with a string value explaining to the user how the app uses this data.
Add NSCalendarsUsageDescription
(Privacy - Calendars Usage Description) into the app .plist file and add its description -as a String-.
The app's Info.plist must contain an NSBluetoothPeripheralUsageDescription key with a string value explaining to the user how the app uses this data.
Add NSBluetoothPeripheralUsageDescription
(Privacy - Bluetooth Peripheral Usage Description) into the app .plist file and add its description -as a String-.
Hope this helped.

- 30,560
- 17
- 97
- 143
You want to prompt the users that you are using the permission for accessing certain features in users smartphone. Don't worry it just a alert message you include the necessary information in your app what feature you may be using and re submit it they will approve it. Apple is always more concerned about the users privacy.

- 118
- 2
- 13