Files
harheimertc/ANDROID_ARCHITECTURE.md
Torsten Schulz (local) 3586704cce
Some checks failed
Code Analysis and Production Deploy / analyze (push) Failing after 10m29s
Code Analysis and Production Deploy / deploy-production (push) Has been skipped
Code Analysis and Production Deploy / deploy-test (push) Has been skipped
Update file permissions for multiple server and test files to executable mode
2026-07-15 08:45:12 +02:00

36 lines
1.6 KiB
Markdown
Executable File

Android Architektur (Kotlin + Jetpack Compose) — Vorschlag
Packages/Module Struktur:
- app/ (Android-App module)
- src/main/java/de/harheimertc/
- ui/
- navigation/ (NavGraph, Routes)
- screens/ (HomeScreen, TermineScreen, SpielplanScreen, GalleryScreen, ContactScreen, AuthScreens, CMS Screens)
- components/ (TopBar, BottomNav, Cards, Modals)
- theme/ (Color.kt, Typography.kt, Theme.kt)
- data/
- api/ (Retrofit interfaces, DTOs)
- repository/ (Repositories für Domain-Modelle)
- local/ (Room DAOs, Entities)
- di/ (Hilt Modules)
- domain/ (UseCases, Business-Logic)
- util/ (Extensions, DateUtils, ImageUtils)
- auth/ (AuthManager, Passkeys helper)
Wichtige Dateien:
- `MainActivity.kt` — Hosts Compose NavHost
- `AppTheme.kt` — Compose Material3 Theme mit Token-Mapping
- `NetworkModule` (Hilt) — Retrofit + OkHttp + Auth Interceptor
- `Repository` Layer — entkoppelt UI von Netz
- `Room` Entities — für Caching von Termine/News/Galerie
Auth-Strategie:
- AuthRepository verwaltet Login/Logout, `checkAuth()` (mirroring `/api/auth/status`).
- Token/Cookie-Speicherung: `EncryptedSharedPreferences` für Tokens oder `CookieJar` mit OKHttp-Client.
- Passkeys: `Fido2Client` wrapper + Bridge zu Server-API (Formate prüfen).
Build / Module Tipps:
- Start mit Single Module `app/` und später evtl. `:data`, `:domain` Trennung.
- Verwende Gradle Kotlin DSL (build.gradle.kts).
Diese Architekturdatei wurde generiert; ich kann nun ein initiales Gradle-Kotlin-Scaffold erzeugen. Soll ich das direkt in `android-app/` ablegen? (Ja/Nein)