UIAutomator2最常用语句总结
1.连接手机的方式:通过WiFi:ip根据情况自己修改
d=u2.connect_wifi(“ip”)
2.连接手机的方式:通过usb:d=u2.connect_usb()
d=u2.connect_usb()
3.安装应用
d.app_install(’ url ')
4.跳过弹窗,禁止弹窗
d.disable_popups() #自动跳过弹出窗口
d.disable_popups(假)#禁用自动跳过弹出窗口
5.获取基本信息
d.info
6.获取窗口大小
print(d.window_size())
7.打开/关闭屏幕
d.screen_on()#打开
d.screen_off()#关闭
8.获取当前屏幕状态
d.info.get(’ screenOn ')
9.解锁屏幕
d.unlock()
10.点击屏幕
d.click(x,y)
11.双击
d.double_click(x,y)
12.长按一下屏幕
d.long_click(x,y)
d.long_click(X,Y,1)#长按1秒(默认)
13.滑动
d.swipe(x, y, x, y)
14.按键操作
d.press(“home”)
d.press(“back”)
d.press(x, y)
15.向上滑动
d(scrollable=True).scroll.vert.backward()
16.解锁屏幕
d.healthcheck() # 解锁屏幕并启动uiautomator服务
最后的d.service(“uiautomator”).stop()是因为,安卓上的UiAutomator是独享的,一旦一个服务使用了它,其他人就不让碰了。所以 appium, macaca, uiautomatorviewer.bat 只要你用了UiAutomator服务,都是冲突的。只有再用完之后,停止掉uiautomator service,才能让其他服务使用
·····················································································
新增示例(python):
# encoding: utf-8
import os
import uiautomator2 as ut2
# 初始化uiautomator2
def init_uiautomator2():
os.system("python -m uiautomator2 init")
time.sleep(5)
if __name__ == '__main__':
init_uiautomator2()
u = ut2.connect_usb()
# 1、用到了三种识别方式——text
u(text="卸载").click(timeout=10)
time.sleep(5)
# 2、用到了三种识别方式——resourceId
if u(resourceId="com.android.settings:id/app_name", text="阅读").exists:
u(resourceId="com.android.settings:id/app_name", text="阅读").click()
break
else:
pass
# 3、用到了三种识别方式——description
u(description="bookshelf_button").click()
except Exception as e:
print(e)