Detached App: iOS Missing Info.plist key

When i try to submit to App Store, my detached ios app was rejected by ItunesConnect, because have one or more issues on Info.plist like this photo:

So must adding some key manually (below) to Info.plist

	<key>NSCameraUsageDescription</key>
	<string>This app requires camera access to run the function properly</string>
	<key>NSContactsUsageDescription</key>
	<string>This app requires contacts access to run the function properly</string>
	<key>NSMicrophoneUsageDescription</key>
	<string>This app requires microphone access to run the function properly</string>
	<key>NSPhotoLibraryUsageDescription</key>
	<string>This app requires photo library access to run the function properly</string>

And than finally they approved my ios app.
Looks like there’s something missing on ExpoKit / ExpoView Template itself, it should be adding this key automatically.

btw, on that case above, this is my env:

Node: 7.10.0
Expo CLI : 41.0.0
Expo: SDK 17
React Native: SDK 17 (Expo forked)

Even with this env below doesn’t work either :

Node: 8.1.4
Expo CLI : 43.0.0
Expo: SDK 19
React Native: SDK 19 (Expo forked)

Thanks

Thanks for reporting this! Helpful to know.

1 Like

Tracking on your issue you opened https://github.com/expo/expo/issues/475

1 Like

I am in the same situation as @firdausious:

  1. Detach app
  2. Build and push to App Store
  3. Email notification from App store team that NSContactsUsageDescription, NSCameraUsageDescription etc. is missing in Info.plist

The problem is that I don’t need access neither to the camera nor to contacts. Adding those keys to Info.plist would solve the problem, but as a potential customer installing the app I would be concerned about granting access to contacts, if there is no actual need.

Is there a way of “stripping” out those parts of expo-kit, in order to prevent false negatives from the App Store?

1 Like

Same here. Specific permissions that I swear I don’t use are:
NSContactsUsageDescription
NSPhotoLibraryUsageDescription
NSCameraUsageDescription

Do we have to detach from Expo before submitting our binary to the App Store and Play Store? If not, is there a way to change the descriptions for the permissions normally found in info.plist and submit to the app stores? (I’m a newbie)

Hey @megel,

You can change the descriptions shown for the permission alerts by configuring the infoPlist key in your app.json

https://docs.expo.io/versions/latest/guides/configuration.html#infoplist

1 Like