Skip to content

siddhantkore/Fleet-Track

Repository files navigation

FleetTrack

Android Kotlin Java Google Maps Retrofit WorkManager

FleetTrack is an Android tracking client that captures device location and posts structured JSON payloads to configured server URLs. The app provides a map view, background tracking, and configurable server endpoints.

Features

  • Live map with selectable tile styles (normal, satellite, terrain).
  • Background location tracking with foreground service.
  • Configurable server URLs and send intervals.
  • Structured JSON payload format for easy ingestion.

Requirements

  • Android Studio (recommended).
  • Java 21.
  • Android SDK (installed via Android Studio).

Setup

  1. Clone the repository.
  2. Open the project in Android Studio.
  3. Ensure local.properties contains your SDK path:
    sdk.dir=/path/to/Android/Sdk
    

Optional: OpenRoute API Key (Debug Only)

If you need OpenRoute features during debug builds, add the key in local.properties:

OPENROUTES_API_KEY=your_key_here

Release builds do not embed this key.

Optional: Release Signing

To produce installable release APKs, add signing properties to local.properties:

RELEASE_STORE_FILE=fleettrack-release.jks
RELEASE_STORE_PASSWORD=your_store_password
RELEASE_KEY_ALIAS=your_alias
RELEASE_KEY_PASSWORD=your_key_password

Build

Debug APK:

./gradlew assembleDebug

Output: app/build/outputs/apk/debug/app-debug.apk

Release APK (signed when signing config is present):

./gradlew assembleRelease

Output: app/build/outputs/apk/release/app-release.apk

Usage

  1. Launch the app.
  2. Grant location permission (and notification permission on Android 13+).
  3. Enter a user ID when prompted.
  4. Add at least one server URL in settings.
  5. Start tracking from the main menu or when prompted after setup.

Payload Format

The app sends JSON with the following top-level structure:

  • metadata: device, user, session, schema version
  • timestamp: captured and sent time
  • location: coordinates and motion data
  • context: device state and network
  • events: event list (e.g., location_update)

Notes

  • Background location requires explicit user consent.
  • If you use http:// server URLs, traffic is sent in cleartext.
  • Keep keystores and passwords private.

About

Simple, User friendly & Lightweight android app/utility to track location, speed, altitude etc.,

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Packages

 
 
 

Contributors