# follow-me Android tracker client for the OutsideTheBox `follow-me` service. Operational app label: **otb-tcom** Project name / repo name: **follow-me** ## MVP v0.1.0 - Android 6.0+ (`minSdk 23`) - Foreground location tracking service - HTTPS primary ingest endpoint with HTTP fallback - Auto-default to HTTP after 3 consecutive HTTPS fallback events on that device - Token-based header auth via `X-API-Key` - Moving mode: 10 second posts - Idle mode: 5 minute posts - Reboot restart if tracking was enabled before reboot - Simple installer/settings UI ## Ingest behavior Primary: - `https://otb-tracker.outsidethebox.top/api/gps-ingest` Fallback: - `http://otb-tracker.outsidethebox.top/api/gps-ingest` Headers: - `X-API-Key: ` - `Content-Type: application/json` JSON body: ```json { "latitude": 43.8971, "longitude": -78.8658, "speed_kmh": 0, "accuracy_m": 12, "heading_deg": 0, "altitude_m": 95, "recorded_at": "2026-03-16T14:32:10Z", "source": "otb-tcom" } ``` ## Build on ripper ```bash cd /home/def/outsidethebox git clone ssh://git@git.etica-stats.org:5252/def/follow-me.git /home/def/outsidethebox/follow-me cd /home/def/outsidethebox/follow-me ``` Copy this project into that directory, then build with Android Studio or the Gradle wrapper after generating it from Android Studio once. ## Git bootstrap on ripper ```bash mkdir -p /home/def/outsidethebox cd /home/def/outsidethebox [ -d follow-me/.git ] || git clone ssh://git@git.etica-stats.org:5252/def/follow-me.git follow-me cd /home/def/outsidethebox/follow-me git remote -v ``` If the remote repo is empty and you want to seed it from this scaffold: ```bash cd /home/def/outsidethebox/follow-me git add . git commit -m "Initial Android tracker scaffold for follow-me" git push -u origin master ``` ## Notes - The app label is intentionally discreet: `otb-tcom`. - Network onboarding, admin creation, drone enrollment, and role-specific install flows should be added once corresponding backend APIs exist. - On Android 8.0+, real-time background tracking requires a foreground service with a visible notification.