Developers use HyperTrack to consumer user's movement data into various products. The pre-requisite to building your use cases is generating the movement data.
The HyperTrack mobile SDK generates this movement data in the form of location, activity and device health using various sensors and OS APIs on the device. The SDK then transmits them to our server with near-zero battery impact.
Follow one of the SDK Quickstarts to embed the SDK into your app.
|Platform Quickstart||Current version|
The SDK is built to be offline first, and work under patchy or mobile networks. This is achieved by caching data on the device when network is unavailable, and queueing network requests.
There are two types of SDK methods, identified with these badges. Whenever possible, use the offline methods.
|These methods are async network-independent calls, and can be called offline. The SDK automatically retries when network is available.|
|These methods are required to be synchronous HTTP requests, to synchronise state correctly with the server. For example, assigning an action needs to be done in-sync, since it is a billable API call. For such methods, you will need to handle the success and error callbacks in your app code.|
Reliability of tracking
Our SDKs are designed to handle expected & unexpected scenarios happening on the device and have the ability built in to restore from them. Read more in reliability section.
Location update frequency
The SDK achieve low-latency with near-zero battery consumption through variable location update frequency. The frequency of data transmission can vary from 2 seconds to 30 mins, depending on your consumption patterns. If you are tracking live, the end-to-end latency will be sub-5 seconds to ensure a real-time experience. If no one is tracking, then the SDK conserves battery by not sending any data.
The SDK has configurations that manage frequencies at which this data is collected and transmitted to the server. The SDK comes with a default set of configurations to balance accuracy, realtime-ness and battery efficiency when generating movement data. These configurations consist of constants and device-level rules.
You can choose to change the defaults by visiting settings page on HyperTrack Dashboard. Should you choose to change these configurations, we will update them on the server and notify the SDK about the change using silent push notifications.
Multiple device support
The SDK is designed to support only one active device per user at a time. In case there are multiple devices for a user, the second device will not track. The unsuccessful tracking from the second device will be shown on the dashboard. Read more in Multiple device support section.
A tracking session starts with
createAction and ends with
completeAction. In order to mock movement for an Action, call
completeAction respectively. Read more about testing using our Mobile SDKs in the Testing section.