# Android Emulator Skill

Production-ready scripts for Android app testing, building, and automation.

- Repository: https://github.com/new-silvermoon/awesome-android-agent-skills (998 stars)
- Category: Design
- License: Apache-2.0
- Last updated: 2026-07-27
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add new-silvermoon/awesome-android-agent-skills --skill android-emulator-skill -g -a claude-code -y`
Codex: `npx skills add new-silvermoon/awesome-android-agent-skills --skill android-emulator-skill -g -a codex -y`
Cursor: `npx skills add new-silvermoon/awesome-android-agent-skills --skill android-emulator-skill -g -a cursor -y`
Gemini CLI: `npx skills add new-silvermoon/awesome-android-agent-skills --skill android-emulator-skill -g -a gemini-cli -y`

## Description

Production-ready scripts for Android app testing, building, and automation. Provides semantic UI navigation, build automation, log monitoring, and emulator lifecycle management. Optimized for AI agents with minimal token output.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Android Emulator Skill

Build, test, and automate Android applications using accessibility-driven navigation and structured data instead of pixel coordinates.

## Quick Start

```bash
# 1. Check environment (use .sh on macOS/Linux, .ps1 on Windows)
bash scripts/emu_health_check.sh
# or on Windows: .\scripts\emu_health_check.ps1

# 2. Launch app
python scripts/app_launcher.py --launch com.example.app

# 3. Map screen to see elements
python scripts/screen_mapper.py

# 4. Tap button
python scripts/navigator.py --find-text "Login" --tap

# 5. Enter text
python scripts/navigator.py --find-type EditText --enter-text "user@example.com"
```

All scripts support `--help` for detailed options and `--json` for machine-readable output.

## Production Scripts

### Build & Development

1. **build_and_test.py** - Build Android projects, run tests, parse results
   - Wrapper around Gradle
   - Support for assemble, install, and connectedCheck
   - Parse build errors and test results
   - Options: `--task`, `--clean`, `--json`

2. **log_monitor.py** - Real-time log monitoring with intelligent filtering
   - Wrapper around `adb logcat`
   - Filter by tag, priority, or PID
   - Deduplicate repeated messages
   - Options: `--package`, `--tag`, `--priority`, `--duration`, `--json`

### Navigation & Interaction

3. **screen_mapper.py** - Analyze current screen and list interactive elements
   - Dump UI hierarchy using `uiautomator`
   - Parse XML to identify buttons, text fields, etc.
   - Options: `--verbose`, `--json`

4. **navigator.py** - Find and interact with elements semantically
   - Find by text (fuzzy matching), resource-id, or class name
   - Interactive tapping and text entry
   - Options: `--find-text`, `--find-id`, `--tap`, `--enter-text`, `--json`

5. **gesture.py** - Perform swipes, scrolls, and other gestures
   - Swipe up/down/left/right
   - Scroll lists
   - Options: `--swipe`, `--scroll`, `--duration`, `--json`

The rest: https://github.com/new-silvermoon/awesome-android-agent-skills/blob/HEAD/.github/skills/testing_and_automation/android-emulator-skill/SKILL.md
