React Native Tracking SDK
The React Native Tracking SDK lets a React Native app start, stop and monitor background location tracking. A thin TypeScript wrapper calls a local Kotlin native module, which forwards to the native Android Tracking SDK distributed through Maven.
| Platform | Status |
|---|---|
| Android | โ Available - documented on these pages |
| iOS | ๐ Coming soon |
Purpose and goals of the SDKโ
React Native has no direct access to platform background-location services, so this integration bridges JavaScript to the same native Tracking SDK used by native Android apps. The JavaScript layer only forwards calls - tracking, background collection and uploads are implemented natively, so the platform behaviours documented on the Android pages apply here as well.
Architectureโ
React Native screen
|
src/TrackingSdk.ts (TypeScript wrapper)
|
NativeModules.TrackingSdk
|
TrackingSdkModule.kt (Kotlin bridge, registered in MainApplication.kt)
|
SsBackgroundGeolocation (Android Maven dependency)
|
Your configured tracking backend
The tracking integration uses a Maven dependency plus a local native bridge that you copy into your app. It does not depend on the React Native Map SDK npm package.
Overview of the SDK features and capabilitiesโ
- Start tracking -
initAndStartTracking()initializes the SDK and starts tracking in one call. - Stop tracking -
stopTracking(). - State queries -
getTrackingState()(live native state) andgetSavedTrackingStatus()(locally saved snapshot). - Device health -
getDeviceHealth()reports permission, location-service, battery-optimization and motion-activity flags for diagnostics. - Two authentication modes - SDK-managed login and registration, or a caller-provided access token. See Authentication.
Reference configurationโ
The reference project is built with the versions below. These are its configured versions, not a compatibility matrix or independently verified minimum requirements.
| Component | Reference configuration |
|---|---|
| React Native | 0.85.3 |
| React | 19.2.3 |
| Node.js | >= 22.11.0 |
| Android minimum SDK | 24 (Android 7.0) |
| Android compile / target SDK | 36 / 36 |
| Android build tools | 36.0.0 |
| Kotlin | 2.1.20 |
| Android NDK | 27.1.12297006 |
| Tracking SDK (Maven) | com.sovereignsolutions:tracking-sdk:3.0.4 |
Keep the React Native template's compatible JDK, Gradle and Android Gradle Plugin versions. The native bridge checks for Android API 23+, but the example app's minimum is API 24.
Continue to Get Started to add the SDK to your React Native project.
Looking for the map rendering SDK instead? See the React Native Map SDK.