--- name: android-device description: "App auf echtes Android-Handy (Samsung S24 Ultra) deployen, USB-Debugging, Wireless ADB, Logcat auf physischem Gerät. Trigger-Phrasen: 'echtes Handy', 'physisches Gerät', 'USB Debugging', 'Samsung', 'S24', 'auf dem Handy testen', 'Wireless ADB', 'Device'." --- # Skill: Android Device (Samsung S24 Ultra) Deployt die Krisenvorrat-App auf das physische Samsung Galaxy S24 Ultra. --- ## Gerätedaten | Eigenschaft | Wert | | --------------- | -------------------------------- | | Modell | Samsung Galaxy S24 Ultra | | Display | 6.8" QHD+ (3120 × 1440), 505 PPI | | Android-Version | Android 14+ (API 34+) | | SoC | Snapdragon 8 Gen 3 | | RAM | 12 GB | --- ## Ersteinrichtung (einmalig) ### 1. USB-Debugging aktivieren Auf dem Samsung S24 Ultra: 1. **Einstellungen → Über das Telefon → Softwareinformationen** 2. **Buildnummer** 7× tippen → Entwickleroptionen werden aktiviert 3. **Einstellungen → Entwickleroptionen**: - **USB-Debugging** aktivieren - **USB-Debugging-Autorisierungen widerrufen** (falls Probleme) - Optional: **Bildschirm beim Laden aktiv lassen** aktivieren ### 2. USB-Verbindung 1. Samsung mit USB-C-Kabel an PC anschließen 2. Auf dem Handy: **USB-Debugging zulassen?** → **Immer von diesem Computer zulassen** → OK 3. Prüfen: ```powershell C:\Users\JensR\AppData\Local\Android\Sdk\platform-tools\adb.exe devices -l ``` Erwartete Ausgabe: ``` XXXXXXXXXXXXXXXX device product:dm3q model:SM_S928B device:dm3q transport_id:N ``` ### 3. Wireless ADB (optional, kabellos) ```powershell $adb = "C:\Users\JensR\AppData\Local\Android\Sdk\platform-tools\adb.exe" # Bei verbundenem USB: Wireless Pairing starten & $adb tcpip 5555 # IP-Adresse des Handys finden (Einstellungen → Über das Telefon → Status → IP-Adresse) & $adb connect 192.168.X.X:5555 # USB-Kabel kann jetzt entfernt werden ``` --- ## Operationen via Skript ```powershell # App bauen + auf Gerät installieren + starten & ".github/skills/android-build/android-dev.ps1" -Action deploy-device # Nur installieren (ohne Build) & ".github/skills/android-build/android-dev.ps1" -Action install-device # App starten & ".github/skills/android-build/android-dev.ps1" -Action launch -Target device # Logcat vom Gerät & ".github/skills/android-build/android-dev.ps1" -Action logcat -Target device ``` --- ## Manuelle Kommandos (Fallback) ### App installieren ```powershell $adb = "C:\Users\JensR\AppData\Local\Android\Sdk\platform-tools\adb.exe" & $adb -d install -r "app\build\outputs\apk\debug\app-debug.apk" ``` `-d` = nur physisches Gerät (nicht Emulator), `-r` = Reinstall. ### App starten ```powershell & $adb -d shell am start -n de.krisenvorrat.app/.MainActivity ``` ### Logcat (gefiltert) ```powershell & $adb -d logcat --pid=$(& $adb -d shell pidof de.krisenvorrat.app) -v time ``` ### Screenshot vom Gerät ```powershell & $adb -d exec-out screencap -p > device-screenshot.png ``` ### App deinstallieren ```powershell & $adb -d uninstall de.krisenvorrat.app ``` --- ## Bekannte Probleme ### 1. `unauthorized` in `adb devices` Das Handy fragt nach USB-Debugging-Berechtigung, die noch nicht bestätigt wurde. **Lösung:** - Display entsperren - Dialog **USB-Debugging zulassen?** bestätigen - Falls kein Dialog: Entwickleroptionen → **USB-Debugging-Autorisierungen widerrufen** → USB neu anschließen ### 2. `no devices/emulators found` **Checkliste:** 1. USB-Kabel prüfen (manche Kabel sind nur zum Laden) 2. USB-Debugging aktiviert? 3. ADB-Daemon neu starten: `& $adb kill-server; & $adb start-server` 4. Samsung-USB-Treiber installiert? ### 3. `INSTALL_FAILED_UPDATE_INCOMPATIBLE` Die App ist mit einem anderen Signaturschlüssel installiert. **Lösung:** ```powershell & $adb -d uninstall de.krisenvorrat.app & $adb -d install "app\build\outputs\apk\debug\app-debug.apk" ``` ### 4. Samsung-spezifisch: App wird von Knox blockiert Samsung Knox kann Debug-Apps blockieren. In **Entwickleroptionen → Apps über USB installieren** aktivieren.