├── .coveragerc ├── .github └── workflows │ ├── main.yml │ └── release.yml ├── .gitignore ├── .vscode └── launch.json ├── DEVELOP.md ├── LICENSE ├── Makefile ├── README.md ├── chrome_plugin ├── background.js ├── client.js ├── d.js ├── image │ ├── get_started128.png │ ├── get_started16.png │ ├── get_started32.png │ └── get_started48.png ├── manifest.json ├── options.html ├── options.js ├── popup.css ├── popup.html └── popup.js ├── codecov.yml ├── e2etests ├── test_harmony_driver.py └── test_scrcpy.py ├── examples └── harmony-video.html ├── poetry.toml ├── pyproject.toml ├── pytest.ini ├── runtest.sh ├── source.xml ├── tests ├── test_android.py ├── test_api.py ├── test_pydantic.py └── test_touch_controller.py └── uiautodev ├── __init__.py ├── __main__.py ├── app.py ├── appium_proxy.py ├── binaries ├── scrcpy-server-v2.7.jar └── scrcpy-server-v3.3.3.jar ├── case.py ├── cli.py ├── command_proxy.py ├── command_types.py ├── common.py ├── driver ├── android │ ├── __init__.py │ ├── adb_driver.py │ ├── common.py │ └── u2_driver.py ├── appium.py ├── base_driver.py ├── harmony.py ├── ios.py ├── mock.py ├── testdata │ └── layout.json └── udt │ ├── appium-uiautomator2-v5.12.4-light.apk │ └── udt.py ├── exceptions.py ├── model.py ├── provider.py ├── remote ├── android_input.py ├── harmony_mjpeg.py ├── keycode.py ├── pipe.py ├── scrcpy.py ├── scrcpy3.py └── touch_controller.py ├── router ├── android.py ├── device.py ├── proxy.py └── xml.py ├── static └── demo.html └── utils ├── common.py ├── envutils.py ├── exceptions.py └── usbmux.py /.coveragerc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/.coveragerc -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /DEVELOP.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/DEVELOP.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/README.md -------------------------------------------------------------------------------- /chrome_plugin/background.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/background.js -------------------------------------------------------------------------------- /chrome_plugin/client.js: -------------------------------------------------------------------------------- 1 | var Client = (function() { 2 | return {} 3 | })(); -------------------------------------------------------------------------------- /chrome_plugin/d.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/d.js -------------------------------------------------------------------------------- /chrome_plugin/image/get_started128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/image/get_started128.png -------------------------------------------------------------------------------- /chrome_plugin/image/get_started16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/image/get_started16.png -------------------------------------------------------------------------------- /chrome_plugin/image/get_started32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/image/get_started32.png -------------------------------------------------------------------------------- /chrome_plugin/image/get_started48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/image/get_started48.png -------------------------------------------------------------------------------- /chrome_plugin/manifest.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/manifest.json -------------------------------------------------------------------------------- /chrome_plugin/options.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/options.html -------------------------------------------------------------------------------- /chrome_plugin/options.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /chrome_plugin/popup.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/popup.css -------------------------------------------------------------------------------- /chrome_plugin/popup.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/chrome_plugin/popup.html -------------------------------------------------------------------------------- /chrome_plugin/popup.js: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- 1 | codecov: 2 | token: d4ab8f2c-0898-4b61-91c0-c0008863c201 -------------------------------------------------------------------------------- /e2etests/test_harmony_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/e2etests/test_harmony_driver.py -------------------------------------------------------------------------------- /e2etests/test_scrcpy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/e2etests/test_scrcpy.py -------------------------------------------------------------------------------- /examples/harmony-video.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/examples/harmony-video.html -------------------------------------------------------------------------------- /poetry.toml: -------------------------------------------------------------------------------- 1 | [virtualenvs] 2 | in-project = true 3 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/pyproject.toml -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/pytest.ini -------------------------------------------------------------------------------- /runtest.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/runtest.sh -------------------------------------------------------------------------------- /source.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/source.xml -------------------------------------------------------------------------------- /tests/test_android.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/tests/test_android.py -------------------------------------------------------------------------------- /tests/test_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/tests/test_api.py -------------------------------------------------------------------------------- /tests/test_pydantic.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/tests/test_pydantic.py -------------------------------------------------------------------------------- /tests/test_touch_controller.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/tests/test_touch_controller.py -------------------------------------------------------------------------------- /uiautodev/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/__init__.py -------------------------------------------------------------------------------- /uiautodev/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/__main__.py -------------------------------------------------------------------------------- /uiautodev/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/app.py -------------------------------------------------------------------------------- /uiautodev/appium_proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/appium_proxy.py -------------------------------------------------------------------------------- /uiautodev/binaries/scrcpy-server-v2.7.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/binaries/scrcpy-server-v2.7.jar -------------------------------------------------------------------------------- /uiautodev/binaries/scrcpy-server-v3.3.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/binaries/scrcpy-server-v3.3.3.jar -------------------------------------------------------------------------------- /uiautodev/case.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/case.py -------------------------------------------------------------------------------- /uiautodev/cli.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/cli.py -------------------------------------------------------------------------------- /uiautodev/command_proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/command_proxy.py -------------------------------------------------------------------------------- /uiautodev/command_types.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/command_types.py -------------------------------------------------------------------------------- /uiautodev/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/common.py -------------------------------------------------------------------------------- /uiautodev/driver/android/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/android/__init__.py -------------------------------------------------------------------------------- /uiautodev/driver/android/adb_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/android/adb_driver.py -------------------------------------------------------------------------------- /uiautodev/driver/android/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/android/common.py -------------------------------------------------------------------------------- /uiautodev/driver/android/u2_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/android/u2_driver.py -------------------------------------------------------------------------------- /uiautodev/driver/appium.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/appium.py -------------------------------------------------------------------------------- /uiautodev/driver/base_driver.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/base_driver.py -------------------------------------------------------------------------------- /uiautodev/driver/harmony.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/harmony.py -------------------------------------------------------------------------------- /uiautodev/driver/ios.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/ios.py -------------------------------------------------------------------------------- /uiautodev/driver/mock.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/mock.py -------------------------------------------------------------------------------- /uiautodev/driver/testdata/layout.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/testdata/layout.json -------------------------------------------------------------------------------- /uiautodev/driver/udt/appium-uiautomator2-v5.12.4-light.apk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/udt/appium-uiautomator2-v5.12.4-light.apk -------------------------------------------------------------------------------- /uiautodev/driver/udt/udt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/driver/udt/udt.py -------------------------------------------------------------------------------- /uiautodev/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/exceptions.py -------------------------------------------------------------------------------- /uiautodev/model.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/model.py -------------------------------------------------------------------------------- /uiautodev/provider.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/provider.py -------------------------------------------------------------------------------- /uiautodev/remote/android_input.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/android_input.py -------------------------------------------------------------------------------- /uiautodev/remote/harmony_mjpeg.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/harmony_mjpeg.py -------------------------------------------------------------------------------- /uiautodev/remote/keycode.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/keycode.py -------------------------------------------------------------------------------- /uiautodev/remote/pipe.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/pipe.py -------------------------------------------------------------------------------- /uiautodev/remote/scrcpy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/scrcpy.py -------------------------------------------------------------------------------- /uiautodev/remote/scrcpy3.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/scrcpy3.py -------------------------------------------------------------------------------- /uiautodev/remote/touch_controller.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/remote/touch_controller.py -------------------------------------------------------------------------------- /uiautodev/router/android.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/router/android.py -------------------------------------------------------------------------------- /uiautodev/router/device.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/router/device.py -------------------------------------------------------------------------------- /uiautodev/router/proxy.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/router/proxy.py -------------------------------------------------------------------------------- /uiautodev/router/xml.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/router/xml.py -------------------------------------------------------------------------------- /uiautodev/static/demo.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/static/demo.html -------------------------------------------------------------------------------- /uiautodev/utils/common.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/utils/common.py -------------------------------------------------------------------------------- /uiautodev/utils/envutils.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/utils/envutils.py -------------------------------------------------------------------------------- /uiautodev/utils/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/utils/exceptions.py -------------------------------------------------------------------------------- /uiautodev/utils/usbmux.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/codeskyblue/uiautodev/HEAD/uiautodev/utils/usbmux.py --------------------------------------------------------------------------------