waydroid-adblisted
Install: claude install-skill matthull/my-skills
# Waydroid ADB Control
Tools and workflows for controlling Waydroid Android emulator via ADB for Expo/React Native development.
## Session Startup
**Always run the startup script first:**
```bash
<project-root>/scripts/waydroid-dev-start.sh
```
This handles network config, ADB connection, and port forwarding (Metro 8081, Supabase 54321, PowerSync 8080). Takes ~15 seconds.
## Development Build vs Expo Go
**We use a development build** (custom native app) instead of Expo Go because:
- MMKV, PowerSync, and other native modules require custom native code
- Dev builds support all native modules after one-time compile
- Hot reload still works normally via Metro
### First-Time Build
```bash
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk
npx expo prebuild --platform android # Generate android/ folder
npx expo run:android # Build + install (~5-10 min)
```
### Subsequent Development
After dev build is installed, start the full dev environment:
```bash
npm run dev
# Starts Supabase + PowerSync + Metro
# App already installed - hot reload works
```
Or start services separately:
```bash
npm run dev:backend # Supabase + PowerSync only
npm start # Metro only (if backend already running)
```
### Rebuild Required When
- Adding new native dependencies
- Changing app.json/app.config.js native settings
- After `npm install` of packages with native code
## Error Handling During Emulator Verification
**This applies to ALL emulator use: frontend verificatio