4
votes

I submitted a Xamarin Forms iOS application to the App Store, but received the following email:

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSContactsUsageDescription key with a user-facing purpose....

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSCalendarsUsageDescription key with a user-facing purpose...

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSMicrophoneUsageDescription key with a user-facing purpose...

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSAppleMusicUsageDescription key with a user-facing purpose

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSSiriUsageDescription key with a user-facing purpose

ITMS-90683: Missing Purpose String in Info.plist - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSBluetoothAlwaysUsageDescription key with a user-facing purpose

However I'm not using any of the permissions mentioned above. My only Nuget references are

Acr.UserDialogs
Newtonsoft.Json
SharpZipLib

I added the missing strings to the info.plist and resubmitted the App. Didn't get the email but Apple still rejected it, asking for further information regarding how the app uses the requested permissions.

Any help is greatly appreciated!

1
Sounds like you do not have the "Mono Linker" enabled in release modeSushiHangover
@SushiHangover Thank you so much! Setting the linker behavior to "Link All" did the trick.Reinaldo
we still see this issue - even with <MtouchLink>Full</MtouchLink>pogorman

1 Answers

5
votes

The issue was related to the "Mono Linker". A million thanks to @SushiHangover in the comments above for pointing it out.

If anyone is experiencing the same problem, simply go to the iOS project options and set the linker to "Link All" as shown below:

enter image description here