Replace proprietary flutter_background_geolocation (requires paid license
for Android release builds) with free flutter_foreground_task package.
Background location tracking now uses foreground service with periodic
geolocation updates every 30 seconds.
Add flutter_background_geolocation for background location tracking on Android.
Service automatically sends coordinates to server when app is in background.
Error messages are shown as system notifications using flutter_local_notifications.
- Replace single tracking with list of TrackedPerson objects in ShareProvider
- Each tracked person gets a unique color from a predefined palette
- Add watch menu (bottom sheet) with list of tracked people, coordinates, and remove buttons
- Add ability to add new tracked people by Share ID
- Render multiple colored markers on the map
- Start/stop periodic polling for all tracked people
- Add shared_preferences for persisting server URL
- Add SettingsService and PlatformService
- Add server URL input field on non-web platforms
- Make ApiConfig baseUrl configurable at runtime
- Add Android location permissions (ACCESS_FINE/COURSE_LOCATION, INTERNET)
- Request location permission on login and map init
- Fix geo_id type: use String instead of int (UUID format)
- Align share_service with API spec: remove unique_id, use share_id only
- Fix watch endpoint response: last_update instead of created_at
- Add error handling with SnackBars for geo operations
- Wrap login screen in SingleChildScrollView for keyboard handling
- Update map tile layer with userAgentPackageName for OSM