SuperAPI AI 工具集

adb-screen-detection

测试与质量

查看项目

更新于 10-16 07:26

技能介绍

用途:为 Android 设备自动化提供屏幕理解能力,在执行操作前后验证界面状态,按文字或外观定位 UI 元素,构建可靠的自动化流程。

主要能力:截图——通过 ADB screencap 抓取设备屏幕并保存到本地;OCR 检测——基于 Tesseract 提取可见文字,支持搜索指定文本并返回坐标;模板匹配——基于 OpenCV 识别已知 UI 元素图;坐标点击——通过 ADB input tap 点击并可选校验点击后是否出现预期文本。

主要脚本与用法:

  1. adb-screen-capture.py 截屏并本地保存,可指定设备与输出路径: uv run .claude/skills/adb-screen-detection/scripts/adb-screen-capture.py --device 127.0.0.1:5555 --output /tmp/screen.png

  2. adb-ocr-extract.py 提取屏幕文字,支持搜索与 JSON 输出: uv run .claude/skills/adb-screen-detection/scripts/adb-ocr-extract.py --search "Login" --json

  3. adb-find-element.py 按 OCR 文本或模板图查找元素,可调阈值: uv run .claude/skills/adb-screen-detection/scripts/adb-find-element.py --method ocr --target "Login Button" --threshold 0.8 或 --method template --template /path/to/template.png

  4. adb-tap-coordinate.py 按坐标点击并可验证屏幕: uv run .claude/skills/adb-screen-detection/scripts/adb-tap-coordinate.py --x 100 --y 200 --verify-text "Next Screen" --timeout 5

典型模式:先截屏,再查找元素,最后点击并验证;或进行基于 OCR 的文本定位点击;或使用模板图查找后点击。脚本各自独立、可链式调用、无状态,并通过 JSON 输出便于管道处理;网络操作设有超时,设计上强调始终在继续前校验屏幕状态。

依赖:系统需有 adb 命令行工具;Python 侧需 pytesseract、opencv-python、pillow、numpy,OCR 另需安装 Tesseract 引擎。

集成与工作流:与 adb-navigation-base、adb-magisk、adb-karrot、adb-workflow-orchestrator 等技能配合使用;自带基于 TOON 的工作流定义(如 screen-verification.toon、element-detection.toon、screen-monitoring.toon),可用 adb-run-workflow.py 运行。

限制与排错:OCR 不可用时需安装 Tesseract 或设置 TESSDATA_PREFIX;模板匹配阈值可调,推荐 0.8–0.9;设备离线需检查 adb devices、重连或重启 ADB。具体收费、价格、平台支持范围等资料暂未提供。