AppStudio 3.3 Cloud Make iOS - Missing Purpose String in Info.plist File

1054
5
Jump to solution
04-04-2019 06:00 AM
MattEnglish
Esri Contributor

Not sure if I should post this to Early Adopter User Forum or here, or both. Was able to build ipa and upload to App Store Connect but I get this message from Apple:

Missing Purpose String in Info.plist File - Your app's code references one or more APIs that access sensitive user data. The app's Info.plist file should contain a NSLocationAlwaysUsageDescription key with a user-facing purpose string explaining clearly and completely why your app needs the data. Starting Spring 2019, all apps submitted to the App Store that access user data will be required to include a purpose string. If you're using external libraries or SDKs, they may reference APIs that require a purpose string. While your app might not use these APIs, a purpose string is still required. You can contact the developer of the library or SDK and request they release a version of their code that doesn't contain the APIs. Learn more

I do notice a "usageDescriptionKeys" locationWhenInUseUsageDescription entry in appinfo.json  

Please advise,

Matt

0 Kudos
1 Solution

Accepted Solutions
TinaJin
Esri Regular Contributor

Hi Matt,

The fix will be in Cloud Make, you just need to re-build your app using Desktop version 3.3 final.

Tina 

View solution in original post

0 Kudos
5 Replies
TinaJin
Esri Regular Contributor

Hi Matt,

Thank you for asking your question in our community. This issue has been fixed for 3.3 release, which is scheduled in two weeks.

Thanks,

Tina 

0 Kudos
MattEnglish
Esri Contributor

Will I need to change the source code of my app, or is this a function of Cloud Make?

0 Kudos
TinaJin
Esri Regular Contributor

Hi Matt,

The fix will be in Cloud Make, you just need to re-build your app using Desktop version 3.3 final.

Tina 

0 Kudos
NathanStrout2
New Contributor III

I'm using 3.3.110 and still getting an app rejected by Apple saying, "We noticed that your app requests the user’s consent to access their location but does not clarify the use of the location in the applicable purpose string." 

0 Kudos
nakulmanocha
Esri Regular Contributor

Please provide a better string  in your app's appinfo.json "UsageDescriptionKeys" for location. Your string must say why your app needs to use location in this case. For instance - "This app needs access to device location to display the current device location on the map while the app is running". In general, if you don't mention why the particular capability is needed by your app in the description keys. It will labelled as generic and can be easily rejected in the app store. 

Re-upload the app and perform a build and then submit to App store.

Nakul

0 Kudos