Known Issues

Location Services in iOS

The Zendrive SDK needs access to location services in the background, and apps must obtain user permission before this access will be allowed.

Starting with iOS 11, Apple requires applications using background location to offer users the ability to choose one of these location options: Always, Never, and Only while using the app. Applications are no longer allowed to just offer users the choice between Always and Never.

These choices do not have to be presented to the user at the same time. They can be split up into 2 steps to soften the request and increase the likelihood of getting at least some access to location. In this approach, the first popup offers the choice between Only while using the app and Never. If the user allows access to location, then the application can present a second choice between Always and Only while using the app.

Application developers should follow best practices such as those described in Apple's Location Services documentation around when and how to request access to location services.

The text in the above popups that explains why an application needs access to location is specified in an app's Info.plist file. Applications that use location in the background need to specify values for all of the following 3 keys in Info.plist:

  • NSLocationAlwaysUsageDescription

  • NSLocationWhenInUseUsageDescription

  • NSLocationAlwaysAndWhenInUseUsageDescription

Check out our App Store Checklist before submitting your Zendrive-enabled application for review to the iOS App Store.

CocoaPods Version

Some of our customers have faced issues with CocoaPods version 1.10.0 and above. Our recommended minimum version is 1.9.0 and maximum version is 1.9.3.

Was this helpful?