Files
MatchLiveTv/native/android/README.md
Emiliano Frascaro 499aee8988 Aggiunge app Android nativa da zero su branch dedicato.
Nuovo progetto Compose in native/android con API, auth, streaming RTMP e schermate base; nessun codice copiato dalla app Flutter.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-06 15:36:36 +02:00

43 lines
1.4 KiB
Markdown

# Match Live TV — app Android nativa
Implementazione **da zero** in Kotlin + Jetpack Compose. Non riusa codice dalla app Flutter (`mobile/`).
## Stack
- UI: Jetpack Compose, Navigation
- Rete: Retrofit + Moshi + OkHttp
- Auth: DataStore
- Streaming: RootEncoder (RTMP) con motore dedicato `LiveBroadcastEngine`
## Struttura
```
app/src/main/kotlin/com/matchlivetv/match_live_tv/
core/ — config, token store
data/ — API, repository, DI container
domain/ — modelli
streaming/ — preview GL, motore RTMP, foreground service
ui/ — schermate Compose
```
## Build APK produzione
```bash
./scripts/build_native_android_apk_prod.sh
adb install -r native/android/app/build/outputs/apk/release/app-release.apk
```
API default: `https://www.matchlivetv.it` (override con `-PAPI_BASE_URL=...`).
## Roadmap
- [x] Login, lista partite, avvio diretta, preview + RTMP
- [ ] Wizard completo (rete, piattaforma YouTube, tabellone)
- [ ] WebSocket tabellone / regia
- [ ] Archivio registrazioni
- [ ] **iOS nativo** — da sviluppare su Mac in `native/ios/` (SwiftUI)
## iOS (prossimo passo su Mac)
Il backend REST/WebSocket è condiviso. Su Mac creeremo `native/ios/` con SwiftUI e AVFoundation/RTMP equivalente, riusando gli stessi contratti API documentati in `mobile/lib/shared/api_client.dart` come riferimento funzionale (non codice).