news 2026/7/15 1:16:10

Python + uiautomator2 手机自动化控制教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python + uiautomator2 手机自动化控制教程

安装 uiautomator2 库

通过 pip 安装 uiautomator2 库,确保 Python 环境已配置。

pip install uiautomator2

初始化设备连接

使用设备的 IP 地址或序列号连接手机,确保手机已开启 USB 调试模式。

import uiautomator2 as u2 d = u2.connect("192.168.1.100") # 替换为设备 IP 或序列号

基本操作示例

点击屏幕上的元素,通过resourceIdtext定位。

d(resourceId="com.android.settings:id/title").click() d(text="Wi-Fi").click()

输入文本

在输入框中输入文本,使用set_text方法。

d(resourceId="com.android.settings:id/search").set_text("蓝牙")

滑动操作

模拟上下滑动屏幕,支持定向滑动(updownleftright)。

d.swipe("up") # 向上滑动 d.swipe("left", steps=20) # 快速左滑

https://www.zhihu.com/zvideo/1994901276425733593/
https://www.zhihu.com/zvideo/1994901272667656981/
https://www.zhihu.com/zvideo/1994901272294355097/
https://www.zhihu.com/zvideo/1994901272449553144/
https://www.zhihu.com/zvideo/1994901271505823296/
https://www.zhihu.com/zvideo/1994901271170289832/
https://www.zhihu.com/zvideo/1994901270696310273/
https://www.zhihu.com/zvideo/1994901267991003190/
https://www.zhihu.com/zvideo/1994901267244413927/
https://www.zhihu.com/zvideo/1994901266325845257/
https://www.zhihu.com/zvideo/1994901264136427136/
https://www.zhihu.com/zvideo/1994901263368884466/
https://www.zhihu.com/zvideo/1994901263087837333/
https://www.zhihu.com/zvideo/1994901261800207831/
https://www.zhihu.com/zvideo/1994901261288509918/
https://www.zhihu.com/zvideo/1994901259057133461/
https://www.zhihu.com/zvideo/1994901258402812280/
https://www.zhihu.com/zvideo/1994901258105017584/
https://www.zhihu.com/zvideo/1994901257698157195/
https://www.zhihu.com/zvideo/1994901256540534523/
https://www.zhihu.com/zvideo/1994901256720896600/
https://www.zhihu.com/zvideo/1994901255747817781/
https://www.zhihu.com/zvideo/1994901254095249788/
https://www.zhihu.com/zvideo/1994901253625516062/
https://www.zhihu.com/zvideo/1994901249846445257/
https://www.zhihu.com/zvideo/1994901247489241467/
https://www.zhihu.com/zvideo/1994901246071559193/
https://www.zhihu.com/zvideo/1994901246633603891/
https://www.zhihu.com/zvideo/1994901243513020475/
https://www.zhihu.com/zvideo/1994901239079646854/
https://www.zhihu.com/zvideo/1994901238165304480/
https://www.zhihu.com/zvideo/1994901237922014150/
https://www.zhihu.com/zvideo/1994901237645206228/
https://www.zhihu.com/zvideo/1994901234583372248/
https://www.zhihu.com/zvideo/1994901234210071846/
https://www.zhihu.com/zvideo/1994901232909841565/
https://www.zhihu.com/zvideo/1994901230158374146/
https://www.zhihu.com/zvideo/1994901230095454954/
https://www.zhihu.com/zvideo/1994901230061900185/

截图与保存

截取当前屏幕并保存到本地文件。

d.screenshot("screen.png")

处理弹窗

监控并关闭意外弹窗,结合watcher使用。

d.watcher("ALERT").when(text="确定").click() d.watcher.start() # 启动监控

进阶:XPath 定位

使用 XPath 语法定位复杂元素,需开启xpath支持。

d.xpath("//*[@text='设置']").click()

常见问题排查

检查设备是否连接成功,若失败需重新授权 USB 调试或重启adb服务。

adb devices # 确认设备列表

性能优化建议

减少不必要的截图和频繁操作,适当增加操作间隔以提升稳定性。

import time time.sleep(1) # 操作间隔
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 15:56:51

彻底解析Java访问修饰符:public、private、protected及默认的区别

文章目录彻底解析 Java 访问修饰符:public、private、protected 及默认的区别?什么是访问修饰符?第一部分:public(公共的)public 的作用范围public 的应用场景示例代码第二部分:private&#xf…

作者头像 李华
网站建设 2026/7/1 11:22:13

AnimeGANv2优化指南:处理高分辨率图片的配置建议

AnimeGANv2优化指南:处理高分辨率图片的配置建议 1. 背景与挑战:高分辨率输入下的性能瓶颈 随着用户对图像质量要求的不断提升,将高清照片(如1080p、4K)转换为二次元风格的需求日益增长。AnimeGANv2 以其轻量级结构和…

作者头像 李华
网站建设 2026/7/12 10:58:51

AnimeGANv2代码实例:Python调用模型避坑指南

AnimeGANv2代码实例:Python调用模型避坑指南 1. 引言 1.1 项目背景与技术价值 随着深度学习在图像生成领域的快速发展,风格迁移(Style Transfer)技术已从早期的神经网络艺术化处理演进到如今高度精细化的动漫风格转换。其中&am…

作者头像 李华
网站建设 2026/7/1 9:45:00

零基础玩转通义千问2.5:7B-Instruct模型保姆级部署教程

零基础玩转通义千问2.5:7B-Instruct模型保姆级部署教程 1. 引言 随着大语言模型技术的快速演进,Qwen2.5 系列在2024年9月正式发布,标志着中等体量模型在性能与实用性上的又一次飞跃。其中,通义千问2.5-7B-Instruct 作为该系列的…

作者头像 李华
网站建设 2026/6/26 21:38:12

【课程设计/毕业设计】基于python-CNN卷神经网络训练识别夏冬季节风景

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

作者头像 李华
网站建设 2026/7/1 9:44:59

AnimeGANv2能否用于视频转换?帧间一致性优化尝试案例

AnimeGANv2能否用于视频转换?帧间一致性优化尝试案例 1. 技术背景与问题提出 随着深度学习在图像风格迁移领域的快速发展,AnimeGANv2作为一款轻量高效的照片转二次元模型,因其出色的画质表现和极低的部署门槛,广泛应用于个人头像…

作者头像 李华