Welcome!
This is the community forum for my apps Pythonista and Editorial.
For individual support questions, you can also send an email. If you have a very short question or just want to say hello — I'm @olemoritz on Twitter.
Missing Info.plist keys
-
Hi
I'm using the Pythonista App Template (https://github.com/omz/PythonistaAppTemplate) to prepare my App for submission to the App store.
It all builds fine, but after I submit to iTunes connect (from Xcode) I receive the following
*Dear developer,
We have discovered one or more issues with your recent delivery for "MapMan". 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 NSCalendarsUsageDescription key with a string value explaining to the user how the app uses this data.
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.
Missing Info.plist key - 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.
Regards,
The App Store team*
What's confusing is the fact that Pythonista App is not using the iOS calendar, photo library or bluetooth, so these seem like false positives. I want to provide some meaningful text for the descriptions, but I'm not sure what to write as I'm not really using these privacy sensitive items.
Has anyone seem this? Know why it's happening? And can offer any advice what I should do?
This is one last hurdle to I finally get my app released so any advice would be greatly appreciated.
-
Most likely this is caused by Pythonista's
calendar
,photos
, andcb
(Core Bluetooth) modules, which are included in the app template, and will also be in your app even if you never import them. I'm not familiar with the app template, so I don't know if you can remove these modules easily. If not, you could set the usage descriptions to short explanations that calendar/photos/Bluetooth aren't used by the app and can safely be denied. Your users should never see that text - Pythonista only asks for permission when the respective module is first imported, and since you don't use the modules that should never happen. -
Thanks, I followed your advice and I now have managed to submit to Test Flight for testing. Many thanks for your help.