Skip to content

About

Background Geolocation SDK

The Background Geolocation SDK is built and maintained by Transistor Software — a small team of engineers obsessed with one problem: tracking a device's location reliably, accurately, and without draining the battery.


Origin Story

The SDK was born in 2013 out of a real-world emergency management problem.

A disaster response organization needed to track first-responders — firefighters, EMTs, search-and-rescue teams — deployed into the field during hurricanes and earthquakes. The requirements were brutal:

  • The cellular network is likely degraded or destroyed. Data must be stored locally and uploaded whenever connectivity returns.
  • The app will be terminated by the OS under memory pressure. Tracking must survive and resume automatically on reboot.
  • Responders carry the same devices all day. Battery life is non-negotiable.

These constraints shaped the SDK's architecture from day one:

Requirement Solution
Network unreliable Built-in SQLite persistence — every location queued locally before upload
App may be terminated Headless background execution — tracking continues without a UI
Device may reboot Boot receiver — tracking auto-restarts on device power-up
Battery critical Motion-detection state machine — sensors decide when to track

Motion Intelligence

The SDK's defining feature is its motion-detection state machine, built on accelerometer, gyroscope, and magnetometer APIs. Rather than polling GPS continuously, the SDK:

  • Monitors inertial sensors when stationary — near-zero battery draw
  • Activates GPS automatically when motion is detected
  • Scales GPS frequency and accuracy to the device's speed and distanceFilter

The result: location tracking at a fraction of the battery cost of naive continuous GPS.


Platform Coverage

What began as a single iOS SDK has expanded to every major mobile development platform:

Platform Package
React Native / Expo react-native-background-geolocation
Flutter flutter_background_geolocation
Capacitor @transistorsoft/capacitor-background-geolocation
Cordova cordova-background-geolocation-lt
Swift / iOS (native) background-geolocation
Kotlin / Android (native) background-geolocation

A single native core — TSLocationManager on iOS, TSLocationManager on Android — powers all platforms. Framework SDKs are thin bridges. One codebase, one set of algorithms, everywhere.


Built for Production

The SDK is trusted by thousands of production apps across logistics, field services, fleet management, emergency response, fitness, and more.

Key production features:

  • Durable HTTP upload queue — automatic retry with exponential back-off
  • JWT / token-refresh auth — Bearer token auto-refresh before expiry
  • Geofencing — unlimited circular regions, reliable even when terminated
  • Background Fetch integration — guaranteed final uploads before iOS reclaims resources
  • Extensive logging — structured logs, configurable verbosity, native log viewer

Purchase a license · GitHub · transistorsoft.com