
openatx/android-uiautomator-server-jar
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
для github.com/openatx/uiautomator2
Обзор
UIAutomator - отличный инструмент для тестирования пользовательского интерфейса Android, но для этого вам нужно написать Java-код, скомпилировать его, установить банку и запустить. Это сложный шаг для всех тестировщиков. Этот проект состоит в том, чтобы построить легкий сервер jsonrpc в устройстве Android, чтобы мы могли просто писать боковой скрипт ПК для написания тестов UIAutomator. В Android Studio -> Строить -> Создание приложения Bundle/APK Построить APK Теперь файл apk можно найти в app/build/outputs/apk/debug/app-debug.apk Если порт не предоставляется, он по умолчанию 9008. Используйте -h, чтобы увидеть все варианты. adb forward tcp:9008 tcp:9008, Инструменты/методы.json AutomatorService.java , s AutomatorService.java s中s/61/s,s умение синхронизировать методы s。
Обзор (машинный перевод)
Английский | 中
Цель
UIAutomator является Отличный инструмент для тестирования пользовательского интерфейса Android, но для этого вам нужно написать java. Код, компиляция, установка банки и запуск. Это сложный шаг для всех Тестировщики…
Этот проект состоит в том, чтобы построить легкий сервер jsonrpc в устройстве Android. Мы можем просто написать сценарий для ПК, чтобы написать тесты UIAutomator.
Как строить
##Постройте АПК
Метод 1:
В Android Studio -> Build -> Build App Bundle/APK -> Build APK
Метод 2:
Теперь файл apk можно найти в app/build/outputs/apk/debug/app-debug.apk
##Установить APK
Идентификатор приложения com.github.uiautomator2. Установка APK требуется для использования метода ввода AdbKeyboard.
Запуск сервера
Если порт не предоставляется, он по умолчанию 9008. Используйте [6], чтобы увидеть все варианты.
Тестовый сервер
Тестовый инструмент JSON-RPC
Интерактивный скрипт JSON-RPC для быстрой отладки и проверки методов RPC.
Сценарий запускается adb forward tcp:9008 tcp:9008 автоматически, пересылка вручную не требуется.
Определения методов в tools/methods.json генерируются из интерфейса AutomatorService.java, включая имя, типы параметров, описание и примерные значения каждого метода.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
Purpose
UIAutomator is a great tool to perform Android UI testing, but to do it, you have to write java code, compile it, install the jar, and run. It’s a complex steps for all testers…
This project is to build a light weight jsonrpc server in Android device, so that we can just write PC side script to write UIAutomator tests.
How to build
Build APK
Method 1:
In Android Studio -> Build -> Build App Bundle/APK -> Build APK
Method 2:
./gradlew assembleDebug
Now apk file can be found in app/build/outputs/apk/debug/app-debug.apk
Install APK
adb install -r app/build/outputs/apk/debug/app-debug.apk
The application ID is com.github.uiautomator2. Installing the APK is required to use the bundled AdbKeyboard input method.
Launch Jar server
adb push app/build/outputs/apk/debug/app-debug.apk /data/local/tmp
adb shell CLASSPATH=/data/local/tmp/app-debug.apk app_process / com.github.uiautomator2.Console [-p port]
If no port is provided, it defaults to 9008. Use -h to see all options.
Test server
adb forward tcp:9008 tcp:9008
curl -X POST -d '{"jsonrpc": "2.0", "id": "1f0f2655716023254ed2b57ba4198815", "method": "deviceInfo", "params": {}}' 'http://127.0.0.1:9008/jsonrpc/0'
# Expect output like
{'currentPackageName': 'com.smartisanos.launcher',
'displayHeight': 1920,
'displayRotation': 0,
'displaySizeDpX': 360,
'displaySizeDpY': 640,
'displayWidth': 1080,
'productName': 'surabaya',
'screenOn': True,
'sdkInt': 23,
'naturalOrientation': True}
JSON-RPC Test Tool
Interactive JSON-RPC script for quickly debugging and verifying RPC methods.
# Interactive mode (pick a method from categorized menus, enter params, see results)
python3 tools/test_jsonrpc.py
# Direct invocation
python3 tools/test_jsonrpc.py ping
python3 tools/test_jsonrpc.py click 100 200
python3 tools/test_jsonrpc.py dumpWindowHierarchy false
The script runs adb forward tcp:9008 tcp:9008 automatically, no manual forwarding needed.
Method definitions in tools/methods.json are generated from the AutomatorService.java interface, including the name, parameter types, description and example values of every method.
Sync methods.json
Whenever a method in AutomatorService.java is added, removed or changed, use the sync-methods skill to update tools/methods.json.
Ask the AI in opencode:
sync methods
The AI will parse the Java sources → extract every method → generate methods.json → validate the JSON.
The skill lives at
.opencode/skills/sync-methods/SKILL.md. It is entirely AI driven and needs no extra scripts.
AdbKeyboard (ATX Keyboard)
Рекомендуемые инструменты
Попробуйте другой запрос или уберите фильтр.
Установка
npx skillfish add openatx/android-uiautomator-server-jar