Files
2026-10-21 16:49:50 +00:00

62 lines
2.3 KiB
Markdown

# deskhub Android
Ersteller: M_Viper
Produktname: deskhub
Dieses Verzeichnis ist das vollständige, eigenständig baubare Android-Projekt für deskhub-Mitarbeiter.
Die App ist nativ in Kotlin mit Jetpack Compose und Material 3 implementiert; sie enthält weder WebView
noch PWA-Wrapper.
## Funktionsumfang
- Mitarbeiter-Login mit optionalem TOTP
- Keystore-geschützte, widerrufbare API-Anmeldung
- Ticketliste mit Volltextsuche sowie Status-, Zuständigkeits- und Abteilungsfiltern
- Ticketdetails mit vollständigem Verlauf und internen Kommentaren
- Änderung von Status und zuständiger Person
- öffentliche Antworten und interne Notizen
- Lade-, Leer- und Fehlerzustände sowie serverseitiger Logout
Die App fragt beim Login die HTTPS-Adresse der deskhub-Installation ab, beispielsweise
`https://support.example.de` oder `https://example.de/deskhub`. Klartext-HTTP ist nicht zugelassen.
## Debug-APK bauen
Voraussetzungen: JDK 17 und Android SDK 34.
```powershell
Set-Location C:\Users\Viper\Desktop\deskhub\mobile
.\gradlew.bat testDebugUnitTest assembleDebug
```
Der Build exportiert die direkt installierbare, mit dem Android-Debugschlüssel signierte APK nach:
`artifacts\deskhub-employee-debug.apk`
Die normale Gradle-Ausgabe liegt unter `build\outputs\apk\debug\DeskHubMobile-debug.apk`.
## Produktiv signierte Release-APK
Der kundeneigene Keystore bleibt außerhalb des Projekts:
```powershell
keytool -genkeypair -v -keystore C:\secure\deskhub-release.jks -alias deskhub `
-keyalg RSA -keysize 4096 -validity 10000
```
Pfad und Zugangsdaten werden nur über Umgebungsvariablen bereitgestellt:
```powershell
$env:JAVA_HOME = 'C:\Program Files\Eclipse Adoptium\jdk-17.0.16.8-hotspot'
$env:DESKHUB_RELEASE_STORE_FILE = 'C:\secure\deskhub-release.jks'
$env:DESKHUB_RELEASE_STORE_PASSWORD = '<Keystore-Passwort>'
$env:DESKHUB_RELEASE_KEY_ALIAS = 'deskhub'
$env:DESKHUB_RELEASE_KEY_PASSWORD = '<Schlüssel-Passwort>'
.\build-release.ps1
```
Das Skript erzeugt eine minifizierte, produktiv signierte APK unter
`artifacts\deskhub-employee-release.apk`. Schlüssel und Passwörter werden nicht eingecheckt.
**Play Store:** Schritt-für-Schritt-Anleitung (Keystore mit `new-keystore.ps1`, AAB mit `build-release.ps1`, Play Console) in `VEROEFFENTLICHEN.md`.