Phase 2: Live-GPS-Tracking + neues Icon

- BanYaroGo-Info.plist (explizit, statt INFOPLIST_KEY_*): UIBackgroundModes
  location, NSLocationWhenInUseUsageDescription,
  NSLocationAlwaysAndWhenInUseUsageDescription
- LocationTracker: CLLocationManager-Wrapper (@Observable @MainActor), Distanz
  via CLLocation.distance, Permission-Handling, Background-Updates
- RouteCreateBody + Encoder mit convertToSnakeCase für POST /api/routes
- TrackingView: Start-Hero-Screen + Live-Karte mit MapPolyline + Stats-Karte
- FinishWalkSheet: Name + Hunde-Multiselect + POST /api/routes
- MainTabView: neuer Aufnehmen-Tab zwischen Touren und Hunde
- AppIcon: neues Hund-mit-GPS-Pin (vom User bereitgestellt, weiße Ränder
  weggeschnitten + Ecken mit Hintergrundfarbe gefüllt)
This commit is contained in:
rene 2026-05-30 10:08:02 +02:00
parent 5bac31109d
commit 0b95e3e6d1
10 changed files with 552 additions and 20 deletions

View file

@ -8,6 +8,9 @@ struct MainTabView: View {
RoutesListView()
.tabItem { Label("Touren", systemImage: "map.fill") }
TrackingView()
.tabItem { Label("Aufnehmen", systemImage: "figure.walk") }
DogsListView()
.tabItem { Label("Hunde", systemImage: "pawprint.fill") }