一条命令配置移动端(Android / iOS)自动化环境

配置adb命令工具

下载后解压,然后配置目录路径到path(系统环境变量)

安装Python

建议:在官网下载安全版本然后安装,比如当前(2025.3.31)最新的是3.11
建议:创建虚拟环境并激活虚拟环境后,然后使用下面命令安装。环境隔离可避免与系统环境已有其他项目依赖包冲突。

bash 复制代码
pip install -i https://pypi.doubanio.com/simple uiautomator2 uiautodev

完成以上两个配置(一条命令 + adb)就可以开始使用了。

  1. 使用USB链接手机,手机要打开开发者模式

  2. 使用下面的命令启动

    bash 复制代码
    uiauto.dev

代码例子
python3 复制代码
import uiautomator2 as u2
from time import sleep

# 连接设备
d = u2.connect()

d.app_start("com.miui.home")

d.xpath('//*[@content-desc="天气"]').click()

sleep(2)
d.xpath('//*[@text="查看近15日天气  >"]').click()

sleep(2)
d.xpath('//*[@content-desc="返回"]').click()

sleep(2)
d.xpath('//*[@content-desc="更多设置"]').click()

sleep(2)
d.xpath('//android.widget.TextView[@text="设置"]').click()

sleep(2)
d.xpath('//*[@resource-id="android:id/checkbox"]').click()

sleep(2)
d.xpath('//*[@content-desc="返回"]').click()

# 关闭应用
d.app_stop("com.miui.home")
相关推荐
泡泡以安3 分钟前
【Android逆向工程】第3章:Java 字节码与 Smali 语法基础
android·java·安卓逆向
一笑的小酒馆6 小时前
Android launcher3实现简单的负一屏功能
android
xuyin12046 小时前
【Android】Flow基础知识和使用
android
李新_8 小时前
基于Markwon封装Markdown组件
android·aigc·markdown
Non-existent98710 小时前
Flutter + FastAPI 30天速成计划自用并实践-第10天-组件化开发实践
android·flutter·fastapi
@老蝴12 小时前
MySQL数据库 - 约束和联合查询
android·数据库·mysql
ljt272496066112 小时前
Compose笔记(六十一)--SelectionContainer
android·笔记·android jetpack
linweidong12 小时前
实战救火型 从 500MB 降到 50MB:高频业务场景下的 iOS 内存急救与避坑指南
macos·ios·objective-c·cocoa·ios面试·nstimer·ios面经
有位神秘人13 小时前
Android中Compose系列之按钮Button
android
一只会奔跑的小橙子13 小时前
APP升级测试检查清单
自动化