-1

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 an NSCalendarsUsageDescription 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 an NSBluetoothPeripheralUsageDescription 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.

jonrsharpe
  • 115,751
  • 26
  • 228
  • 437
Dean
  • 135
  • 2
  • 10

5 Answers5

4

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

reference

Rajat
  • 10,977
  • 3
  • 38
  • 55
4

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’.

enter image description here

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.

Wolverine
  • 4,264
  • 1
  • 27
  • 49
2

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,

enter image description here

Likewise add NSCalendarsUsageDescription also. You can add new key - value by clicking + beside information property list.

Ketan Parmar
  • 27,092
  • 9
  • 50
  • 75
1

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-.

enter image description here

Hope this helped.

Ahmad F
  • 30,560
  • 17
  • 97
  • 143
0

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.

Balaji JB
  • 118
  • 2
  • 13