What problem does it solve?
This Skill solves flaky Android testing setup caused by ambiguous ADB device selection, incorrect transport targeting, and timing issues where scripts run before the device is fully ready.
Core Features & Use Cases
- Deterministic device discovery: Guides how to interpret
adb devices / adb devices -l output, including states like device, offline, unauthorized, and Linux-only no permissions.
- Correct transport targeting: Shows when to use
-s SERIAL, -d, -e, or -t TRANSPORT_ID to avoid “more than one device/emulator” failures and to select the intended transport reliably.
- Canonical waiting flow: Uses
adb wait-for[-TRANSPORT]-STATE with the correct allowed STATE values, then recommends polling sys.boot_completed when boot completion is required for actions like install and instrumentation.
Quick Start
Use the connecting-to-devices skill to write a CI script that lists ADB transports, selects the intended one, waits for it to reach state device, then blocks until sys.boot_completed becomes 1 before starting tests.