"We received email from Apple.
"We identified one or more issues with a recent delivery for your app,
Your delivery was successful, but you may wish to correct the following
issues in your next delivery:
"Missing Purpose String in Info.plist File.
Your app's code references one or more APIs that access sensitive user
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
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.
In our code we are not using any NSLocation class. After carefully
examining our code I found that ios-pushwoosh-sdk is using
pushwooshGeozones.framework. I request to pushwoosh team to look into
this issue, so we will not get complain in the next build.
Please note that pushwooshGeozones framework should not be automatically added to your project - it should be manually added as per this integration guide. Therefore, most probably, it was mistakenly added to your app manually. If you are not using Geozones feature, you can safely remove this framework from your project.
The warning you receive from Apple indicates that you should add a description to NSLocationAlwaysUsageDescription key in your info.plist. This description will be shown on the pop-up alert while requesting this permission from user, so you need to provide a clear explanation to this purpose string. Here is a brief example: