There are a couple of significant changes for iOS 11 relating to location.
- The display of the Blue Bar indicating an App is using location in the background being expanded for Apps that aggressively use location in the background
- For Apps that need location "Always" the location "When in Usage" option is also enforced
Blue Bar not an issue
We have tested apps using the the xtremepush location services on iOS 11 and have not seen any Blue Bar feedback for these apps. This is to be expected as we do not use GPS in the background or use location in an intensive way to provide our location capability on iOS.
Changes to location usage description keys required
This is not made clear in docs for iOS 11 yet but in practice there is a change required to location usage keys for location services to work when targeting iOS 11.
On iOS 11 you need to add the following two usage description keys and associated usage description text for location to your plist:
Without both of these your App will simply not request location permission. You should explicitly state that your App needs the Always permission for whatever you use it for e.g. notifying you of special experiences at the stadium on game-day , adding reward points when you visit our store etc.
The opt-in prompt will now include an "Only While Using the App" option.
Behaviour on iOS 11 when targeting 10
If you don't update an existing App targeting 10 that only has the NSLocationAlwaysUsageDescription value in your Info.plist, location services will still work but the opt-in prompt will now look like below. The "Only While Using the App" option is added and a standard additional explanation that App may not work correctly if user does not select Always.