---
name: android-deploy
description: 用於 TaiwanStar 專案的 Android App 編譯、安裝與自動啟動。當使用者要求「安裝到手機」、「部署 APK」或「更新 App」時，應使用此技能。
---

# Android 部署技能 (TaiwanStar 專案專用)

此技能定義了在 WSL 環境下編譯 Android App 並透過 Windows ADB 安裝至實體手機的標準流程。

## 前置要求

1. **Java 版本**：必須使用 OpenJDK 17。
2. **ADB 工具**：使用 Windows 端安裝的 ADB (路徑：`/mnt/c/Users/User/AppData/Local/Android/Sdk/platform-tools/adb.exe`)。
3. **手機連線**：手機必須開啟 USB 調試，且已連線至電腦。

## 標準部署流程

執行以下複合指令以完成「編譯 + 安裝 + 自動啟動」：

```bash
# 1. 設定環境變數
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64

# 2. 執行編譯與安裝 (包含自動開啟 HomeActivity)
./gradlew :app:assembleS_12_XY_U_Standard_Debug && \
/mnt/c/Users/User/AppData/Local/Android/Sdk/platform-tools/adb.exe install -r -d -t app/build/outputs/apk/S_12_XY_U_Standard_/debug/app-S_12_XY_U_Standard_-10_08_2_R-debug.apk && \
/mnt/c/Users/User/AppData/Local/Android/Sdk/platform-tools/adb.exe shell am start -n com.unibuy.smartdevice/com.unibuy.smartdevice.HomeActivity
```

## 注意事項

- **安裝失敗**：若出現 `INSTALL_FAILED_UPDATE_INCOMPATIBLE`，代表簽名或版本衝突，請先執行 `adb uninstall com.unibuy.smartdevice`。
- **ADB 找不到裝置**：請確認手機 USB 模式是否為「檔案傳輸」或「PTP」，並檢查 Windows 端的 ADB server 是否正常執行。
- **Mock Mode**：此部署版本已包含 Mock Mode，可在無串口設備的手機上正常運作不崩潰。
