python使用uiautomator2操作真机
最佳答案 问答题库598位专家为你答疑解惑
测试环境:win10 64位,python3.10.4;真机,荣耀10青春版,Android版本10。
之前是在手机模拟器上操作的,参考我的文章python使用uiautomator2操作雷电模拟器_小小爬虾的博客-CSDN博客
一、将手机设置为开发者模式
1、设置-关于手机-在“版本号”上连续点击即可进入开发者模式
2、设置-系统和更新-开发人员选项-打开“USB调试”和打开“仅充电模式下允许ADB调试”
二、将手机用USB线连接电脑,手机上弹出对话框,选择信任此电脑
三、使用adb连接手机
我尝试使用雷电模拟器自带的adb来连接,其路径cd D:\leidian\LDPlayer4,进入路径后,直接adb devices即显示出了连接手机的情况(没想到会这么顺利),记录下串号Q7PRX19227005773,后面会用到。
四、 运行python3 -m uiautomator2 init安装包含httprpc服务的apk到手机
进入路径cd C:\Users\LC\AppData\Local\Programs\Python\Python310\, 输入python3 -m uiautomator2 init,注意手机上要同意继续安装(会有两次提醒)
在这台win10电脑操作时,仍然出现模拟器上的错误:
这次就不慌了。这是因为adb占用了5037端口。在任务管理器中结束adb进程。手机上卸载小汽车。重新python3 -m uiautomator2 init后就安装成功了,如下图。
五、运行测试代码
import uiautomator2 as u2d = u2.connect() # connect to device
print(d.info)
六、win+r打开运行,运行weditor
输入手机设备号,点击Connect,然后拨弄几次静态和实时,真机上的画面就呈现在页面上了。
在打开某个APP的情况下,再次运行测试代码,就能显示出目前APP的包名:
至此,就可以开始编写更详细的代码来控制操作手机了。
备注:之后再真机连接电脑,有可能需要先在手机上点击“小汽车”图标,然后点击“启动UIAUTOMATOR”,才能正常开展工作。
接下来写一段签到并领取某鱼币的小代码,实测可用:
import uiautomator2 as u2d = u2.connect() # connect to device
print(d.info)
d.app_start('com.taobao.idlefish')
d.implicitly_wait(5)#点击签到
d(resourceId="com.taobao.idlefish:id/right_title_view_lottie").click()#点击领取
elem=d.xpath('//*[@content-desc="点击领取"]')
elem.click()# elem=d.xpath('//*[@content-desc="100币"]/android.view.View[1]')
# elem.click()elem_ok=d.xpath('//*[@content-desc="知道了"]')
elem_ok.click()
99%的人还看了
相似问题
- 手机弱网测试工具:Charles
- react 手机端 rc-table列隐藏(根据相关条件是否隐藏)、实现图片上传操作
- 手机LiDAR-based激光雷达标定板提高无人汽车智能化程度
- Autox.js和Auto.js4.1.1手机编辑器不好用我自己写了一个编辑器
- 男子遗失30万天价VERTU唐卡手机,警察2小时“光速”寻回
- 音视频技术在手机上的应用与挑战
- uniapp 实现微信小程序手机号一键登录
- 以key为特征,分类多个信息(手机流量栗子)
- 潇洒郎: 小白一次性成功——小米红米手机解BL锁+ ROOT-刷面具
- Java业务场景(一):实现屏蔽手机号码功能 用户手机号隐私功能 字符串截取 || 拼接
猜你感兴趣
版权申明
本文"python使用uiautomator2操作真机":http://eshow365.cn/6-14937-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!