The issue
I’m having an issue when submitting a build to Apple. It keeps getting rejected, they send me this message:
We have discovered one or more issues with your recent delivery for “appName”. To process your delivery, the following issues must be corrected:
Missing Info.plist key - This app attempts to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSPhotoLibraryUsageDescription key with a string value explaining to the user how the app uses this data.
Suggested solution [still not working for me]
There is a thread suggesting a solution here. It suggests removing the plugin, removing the ios platform, adding the ios platform and re-installing the plugin with the needed parameter(s) as such:
cordova plugin add cordova-plugin-camera --variable CAMERA_USAGE_DESCRIPTION="your usage message" --variable PHOTOLIBRARY_USAGE_DESCRIPTION="your usage message"
I did everything that was suggested. The config.xml
and package.json
file now show the correct lines with the camera usage description.
When I open the project in Xcode, in the Info tab, it shows the correct property in the info.plist file:
Privacy - Camera Usage Description : your usage message
When I search my project for info.plist (in Finder), I have a file called MyProjectName-Info.plist, which shows the key NSCameraUsageDescription as expected. So far, so good.
Where it got stuck
When I build the project, and/or create an archive, for every build an info.plist file is generated. This file never contains the NSCameraUsageDescription property as I would expect. In fact, it shows a lot less properties then are shown in the info.plist in the Xcode project. I don’t understand why this happens. My builds all get rejected as a result.
Any help or suggestions are appreciated.