docs(android): expand node README
parent
df8915cf5c
commit
67707763f7
|
|
@ -1,10 +1,51 @@
|
||||||
## Clawdis Node (Android) (internal)
|
## Clawdis Node (Android) (internal)
|
||||||
|
|
||||||
Prototype Android “node” app (Iris parity): connects to the Gateway-owned bridge (`_clawdis-bridge._tcp`) over TCP and exposes Canvas + Chat + Camera.
|
Modern Android “node” app (Iris parity): connects to the **Gateway-owned bridge** (`_clawdis-bridge._tcp`) over TCP and exposes **Canvas + Chat + Camera**.
|
||||||
|
|
||||||
### Open in Android Studio
|
Notes:
|
||||||
|
- The node keeps the connection alive via a **foreground service** (persistent notification with a Disconnect action).
|
||||||
|
- Chat always uses the shared session key **`main`** (same session across iOS/macOS/WebChat/Android).
|
||||||
|
- Supports modern Android only (`minSdk 31`, Kotlin + Jetpack Compose).
|
||||||
|
|
||||||
|
## Open in Android Studio
|
||||||
- Open the folder `apps/android`.
|
- Open the folder `apps/android`.
|
||||||
|
|
||||||
### Run
|
## Build / Run
|
||||||
- `./gradlew :app:installDebug`
|
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd apps/android
|
||||||
|
./gradlew :app:assembleDebug
|
||||||
|
./gradlew :app:installDebug
|
||||||
|
./gradlew :app:testDebugUnitTest
|
||||||
|
```
|
||||||
|
|
||||||
|
`gradlew` auto-detects the Android SDK at `~/Library/Android/sdk` (macOS default) if `ANDROID_SDK_ROOT` / `ANDROID_HOME` are unset.
|
||||||
|
|
||||||
|
## Connect / Pair
|
||||||
|
|
||||||
|
1) Start the gateway (on your “master” machine):
|
||||||
|
```bash
|
||||||
|
pnpm clawdis gateway --port 18789 --verbose
|
||||||
|
```
|
||||||
|
|
||||||
|
2) In the Android app:
|
||||||
|
- Open **Settings**
|
||||||
|
- Either select a discovered bridge under **Discovered Bridges**, or use **Advanced → Manual Bridge** (host + port).
|
||||||
|
|
||||||
|
3) Approve pairing (on the gateway machine):
|
||||||
|
```bash
|
||||||
|
clawdis nodes pending
|
||||||
|
clawdis nodes approve <requestId>
|
||||||
|
```
|
||||||
|
|
||||||
|
More details: `docs/android/connect.md`.
|
||||||
|
|
||||||
|
## Permissions
|
||||||
|
|
||||||
|
- Discovery:
|
||||||
|
- Android 13+ (`API 33+`): `NEARBY_WIFI_DEVICES`
|
||||||
|
- Android 12 and below: `ACCESS_FINE_LOCATION` (required for NSD scanning)
|
||||||
|
- Foreground service notification (Android 13+): `POST_NOTIFICATIONS`
|
||||||
|
- Camera:
|
||||||
|
- `CAMERA` for `camera.snap` and `camera.clip`
|
||||||
|
- `RECORD_AUDIO` for `camera.clip` when `includeAudio=true`
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue