Integrating with Android apps

Our integration workflow for Android uses Gradle to link our software to your app as a dependency. It also updates to the latest SDK release when you build your app from source.

OS Support

The SDK offers both Java and Kotlin interfaces to use in integration. The minimum operating system version supported is API level 14.


To collect data at the relevant resolution, the SDK requires access to fine location. Other required permissions are not sensitive.

Integrating with iOS mobile apps

Our integration workflow for iOS uses Cocoapods to manage the library as a dependency, which also keeps the latest version in sync with your project.

OS Support

The SDK provides both Objective-C and Swift interfaces for codebase initialisation. The minimum supported OS version is iOS 6.


The SDK uses background location permission in order to make uniform measurements throughout the consumer journey.

Technical FAQs

Technical FAQs answered

Find answers to some of the commonly-asked technical and integration questions in the section beside. For specific queries not covered here, feel free to contact us.

The SDK uses location but only if permission has already been provided by the user as part of your own experience. It does not trigger request alerts or otherwise interfere with the user experience.

The SDK uses less than 1% of device battery per week, which is negligible. This is because it does not request location updates – rather it accesses cached locations from across the OS.

The compiled library size varies between Android and iOS, but adds about 30Kb to the size of the built application.

The SDK has native support for both platforms iOS and Android and can be used to in established workflows to build plugins for Unity, Cordova and Adobe Air.

The size of the request payload depends on how many measurements have been taken and queued into the batches that are submitted. The max batched payload size is 8Kb and is only submitted over WiFi.

No, it does not use Wakes or Alarms at all.