Add GPS tracking functionality with location services integration

- Introduced TrackingRepository to manage activity tracking state and GPS points.
- Implemented LocationTrackingService for foreground GPS tracking using FusedLocationProviderClient.
- Created data models GpsPoint and TrackingState to represent tracking data.
- Enhanced TrackActivityScreen with UI for selecting activity type and displaying tracking status.
- Added LocationUtils for geospatial calculations, including distance tracking and loop closure detection.
- Updated build.gradle.kts to include Google Play Services Location dependency.
This commit is contained in:
Redsandy
2026-03-15 00:12:08 +03:00
parent ffc5d0887e
commit 02171118ec
10 changed files with 711 additions and 26 deletions

View File

@@ -30,6 +30,9 @@ retrofitKotlinxSerialization = "1.0.0"
# MapLibre
maplibreCompose = "0.12.1"
# Google Play Services
playServicesLocation = "21.3.0"
# Firebase
firebaseBom = "33.7.0"
@@ -88,6 +91,9 @@ retrofit-kotlinx-serialization = { group = "com.jakewharton.retrofit", name = "r
# MapLibre
maplibre-compose = { module = "org.maplibre.compose:maplibre-compose", version.ref = "maplibreCompose" }
# Google Play Services
play-services-location = { group = "com.google.android.gms", name = "play-services-location", version.ref = "playServicesLocation" }
# Firebase
firebase-bom = { group = "com.google.firebase", name = "firebase-bom", version.ref = "firebaseBom" }
firebase-messaging = { group = "com.google.firebase", name = "firebase-messaging-ktx" }