Fjern hjemmeskjerm-widget

Widgeten har vært en vedlikeholdskostnad uten et klart produktformål:
den duplikerte lokasjonslogikken fra hovedappen, kunne vise inntil
24 timer gammel GPS-posisjon uten alderindikator, og krevde en egen
WorkManager-periodisk oppdatering. Den strategiske vurderingen
(2026-04-17) konkluderte med at den samme nytten kan leveres via
app-åpning eller en lettere mekanisme senere, og at flaten bør
krympes før pitch mot offentlig sektor.

Denne endringen fjerner widget/-pakken for begge flavors
(standard + fdroid), AppWidgetProvider-mottakeren i manifestet,
WidgetUpdateWorker, androidx.work:work-runtime-ktx-avhengigheten,
widget_prefs SharedPreferences-lagringen i MainActivity, samt
widget_*-strenger og linjen om «for hjemmeskjerm-widgeten» i
about-dialogen. Dokumentasjonen i CLAUDE.md, ARCHITECTURE.md,
README.md, STANDING_ON_SHOULDERS.md og fastlane-beskrivelsene
er justert tilsvarende. Historiske changelogs (v3, v5, v6, v7)
er bevisst urørt — de beskriver korrekt hva som ble levert i
de versjonene.

Eksisterende widget-plasseringer på brukernes hjemmeskjerm
forsvinner automatisk neste gang appen oppdateres; Android
fjerner foreldreløse provider-komponenter uten migreringskode.
Begge debug-flavors bygger rent etter endringen.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Ole-Morten Duesund 2026-04-20 09:57:45 +02:00
commit 0743eac9dd
19 changed files with 9 additions and 1111 deletions

View file

@ -12,7 +12,6 @@ The app must work on devices without Google Play Services (e.g. LineageOS, Graph
- **Location**: Prefer FusedLocationProviderClient (Play Services) → fall back to LocationManager (AOSP)
- **Maps**: OSMDroid (no Google dependency)
- **Database**: Room/SQLite (no Google dependency)
- **Background work**: WorkManager (works without Play Services via built-in scheduler)
### Offline-First
This is an emergency app. Assume internet and infrastructure may be degraded or unavailable. All core functionality (finding nearest shelter, compass navigation, sharing location) must work offline after initial data cache. Avoid solutions that depend on external servers being reachable.
@ -24,7 +23,6 @@ This is an emergency app. Assume internet and infrastructure may be degraded or
- **Database**: Room (SQLite) for shelter data cache
- **HTTP**: OkHttp for data downloads
- **Location**: FusedLocationProviderClient (Play Services) with LocationManager fallback
- **Background**: WorkManager for periodic widget updates
- **UI**: Traditional Views with ViewBinding
## Key Data Flow
@ -44,7 +42,6 @@ no.naiv.tilfluktsrom/
├── data/ # Room entities, DAO, repository, GeoJSON parser, map cache
├── location/ # GPS location provider, nearest shelter finder
├── ui/ # Custom views (DirectionArrowView), adapters
├── widget/ # Home screen widget, WorkManager periodic updater
└── util/ # Coordinate conversion (UTM→WGS84), distance calculations
```