No description
Find a file
2026-06-12 21:30:29 +00:00
app location permission 2026-06-11 19:23:32 +02:00
gradle forecast range select 2026-06-11 18:49:10 +02:00
.gitignore init 2026-05-27 18:54:24 +02:00
build.gradle.kts init 2026-05-27 18:54:24 +02:00
gradle.properties init 2026-05-27 18:54:24 +02:00
gradlew init 2026-05-27 18:54:24 +02:00
gradlew.bat init 2026-05-27 18:54:24 +02:00
Readme.md Readme.md 2026-06-12 21:30:29 +00:00
settings.gradle.kts init 2026-05-27 18:54:24 +02:00

Erfüllung der Projektanforderungen

Internetfähige Anwendung

Die App ruft aktuelle UV-Daten über einen externen Webservice ab. Die Kommunikation erfolgt über HTTP-Anfragen, wobei die empfangenen JSON-Daten verarbeitet und in der Benutzeroberfläche dargestellt werden.

Lokale Datenspeicherung

Benutzerdaten werden mithilfe von Room Database lokal auf dem Gerät gespeichert. Dadurch bleiben die Daten auch nach dem Schließen der Anwendung erhalten.

Mindestens drei Screens

Die Anwendung besteht aus mehreren Screens:

  • Login Screen
  • Home Screen
  • User Screen

Einsatz von Coroutines und ViewModel

Für asynchrone Operationen, insbesondere API-Aufrufe und Datenverarbeitung, werden Kotlin Coroutines verwendet. Die Verwaltung des UI-Zustands erfolgt über ViewModels nach dem MVVM-Architekturmuster.

Einsatz eines Sensors

Die Anwendung nutzt die Standortdienste des Smartphones (GPS), um den aktuellen Standort zu bestimmen und standortabhängige UV-Daten bereitzustellen.


Verwendete Technologien

  • Kotlin
  • Jetpack Compose
  • ViewModel
  • Kotlin Coroutines
  • Room Database
  • WorkManager
  • Google Location Services (GPS)
  • OkHttp
  • Gson
  • Material Design 3

Architektur

Die Anwendung basiert auf dem MVVM-Architekturmuster (Model-View-ViewModel).

  • Die UI wurde mit Jetpack Compose umgesetzt.
  • ViewModels verwalten den Anwendungszustand.
  • Repositories kapseln den Datenzugriff.
  • Room Database dient der lokalen Speicherung.
  • Externe UV-Daten werden über einen Webservice bezogen.

Externe Datenquelle

Die Anwendung bezieht aktuelle UV-Daten über einen öffentlichen Webservice. Die Antwort wird im JSON-Format empfangen und mithilfe von Gson verarbeitet.

Die Daten werden verwendet, um:

  • den aktuellen UV-Index anzuzeigen
  • UV-Risiken zu bewerten
  • standortabhängige Empfehlungen bereitzustellen