1.设备屏幕事件

熄灭屏幕d.screen_off()

唤醒屏幕d.screen_on()

屏蔽状态d.info.get('screenOn')#返回True or False

解锁屏幕d.unlock()#安卓7.0试了可以,安卓9.0就不行了,实际行为是 1.启动activity: com.github.uiautomator,2.按下home键

2.设备按键事件(所有的keyevent请点我)或官方地址

用法:d.press(keycode)

当前支持以下事件键值:,

home(主屏),back(返回上一级)

left,right,up,down,center(打开一个文本编辑框,可看到移动光标)

search(搜索框),enter(回车),delete ( or del 删除选中内容)

recent (recent apps),menu(菜单键) 这俩效果貌似一样的

volume_up(音量+),volume_down(音量-),volume_mute(静音)

camera(相机--没打开),power(电源键)

3.设备手势交互

#x,y表示坐标,或填入小数(0.5,0.5)百分比表示屏幕的中心点,适用于:click,swipe,drag,long_click

单击d.click(x,y)

双击d.double_click(x,y,[duration])#两次点击之间的间隔默认0.1秒

长按d.long_click(x,y,[delay])#delay默认0.5秒

滑动d.swipe(sx,sy,ex,ey,[delay])#delay默认0.5秒

拖拽d.drag(sx,sy,ex,ey,[delay])#delay默认0.5秒

多点滑动:hw.swipe_points([(209,943),(541,973),(551,1265),(857,1265)],0.2)

按下并拖动(Beta):

d.touch.down(x,y)

time.sleep(0.1)

d.touch.move(x,y)

d.touch.up()

4.屏幕方向设定

#打开拨号界面或短信界面:在android7.0上试了n,l,r均有效,android9.0上相册有受影响

n(natural),l(or left),r(right),u(upsidedown 这个无效)

direct = d.orientation#默认方向,输出natural

d.set_orientation('l')

#锁定/解锁屏幕旋转

d.freeze_rotation()

d.freeze_rotation(false)

5.屏幕截图

#要获得PIL格式的图像,需要安装pillow库,支持png、jpg格式:d.screenshot("c:/name.jpg")

#要获得opencv格式的图像,需要安装numpy和cv2库,用法如下:

img=xm.screenshot(format='opencv')

cv2.imwrite('c:/test.jpg',img)

#获得原始的jpeg数据

imgbin=d.screenshot(format='raw')

open("test.jpg","wb").write(imgbin)

6.转储UI hierarchy

xml=d.dump_hierarchy()

7.打开通知中心/快捷设置

d.open_notification()

d.open_quick_settings()

UIAutomator2的API文档(二)的更多相关文章

  1. 基于Zabbix API文档二次开发与java接口封装

    (继续贴一篇之前工作期间写的经验案例) 一.           案例背景 我负责开发过一个平台的监控报警模块,基于zabbix实现,需要对zabbix进行二次开发. Zabbix官方提供了Rest ...

  2. UIAutomator2的API文档(三)

    1.UI对象识别器Selector 用法d(text='Clock', className='android.widget.TextView') 支持以下参数,详细信息可参考UiSelector Ja ...

  3. UIAutomator2的API文档(一)

    检查并维持设备端守护进程处于运行状态,应该是重启了atx守护进程:d.healthcheck() 1.隐式等待 import uiautomator2 as u2serialno = '7f3dec6 ...

  4. 【HighCharts系列教程】二、Highcharts结构及API文档

    一.你必须知道的 1.首先,HighCharts是基于Jquery框架开发的,所以需要在页面引入Jquery,具体代码是: <script type="text/javascript& ...

  5. Spring MVC中使用Swagger生成API文档和完整项目示例Demo,swagger-server-api(二十)

    一:Swagger介绍 Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目 实现了与SpingMVC框架的无缝集成功能,方便生成spring r ...

  6. .Net Core3.0 WebApi 项目框架搭建 二:API 文档神器 Swagger

    .Net Core3.0 WebApi 项目框架搭建:目录 为什么使用Swagger 随着互联网技术的发展,现在的网站架构基本都由原来的后端渲染,变成了:前端渲染.后端分离的形态,而且前端技术和后端技 ...

  7. SpringBoot入门教程(二十)Swagger2-自动生成RESTful规范API文档

    Swagger2 方式,一定会让你有不一样的开发体验:功能丰富 :支持多种注解,自动生成接口文档界面,支持在界面测试API接口功能:及时更新 :开发过程中花一点写注释的时间,就可以及时的更新API文档 ...

  8. 使用Swagger2构建强大的RESTful API文档(2)(二十三)

    添加文档内容 在完成了上述配置后,其实已经可以生产文档内容,但是这样的文档主要针对请求本身,而描述主要来源于函数等命名产生,对用户并不友好,我们通常需要自己增加一些说明来丰富文档内容.如下所示,我们通 ...

  9. 使用Swagger2构建强大的RESTful API文档(1)(二十二)

    由于Spring Boot能够快速开发.便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API.而我们构建RESTful API的目的通常都是由于多终端的原因,这 ...

随机推荐

  1. STL--priority_queue--自定义数据类型

    STL中priority_queue的声明模板有3个参数priority_queue<Type,Container,Functional>. 当使用的数据类型Type为自定义数据类型时有以 ...

  2. Knapsack Problem

    0-1背包 描述:N件物品,第i件的重量是w[i],价值v[i].有一个容量为W的背包,求将哪些物品放入背包可使总价值最大.每件物品可以用0或1次. 分析:根据题意,可以写出表达式: \[max(\S ...

  3. INTERVIEW #3

    菊厂的面试本来没打算记录,因为当时投的是非技术岗(技术支持).为了全面,就寥做记录. 菊厂的面试因为有口头保密协议,所以不能透露具体题目. 0 群面 简历通过筛选后,会有短信通知去面试. 非技术岗第一 ...

  4. 数学--数论--HDU 2582 F(N) 暴力打表找规律

    This time I need you to calculate the f(n) . (3<=n<=1000000) f(n)= Gcd(3)+Gcd(4)+-+Gcd(i)+-+Gc ...

  5. pyhton中绘制多个图像

    1,在python的图像学习中,有时我们需要在同一个窗口中,显示多个图像,方便我们查看输出图像的区别. 2,在pycharm中,导入matplotlibmokuai,据说此模块来自matlab,因为没 ...

  6. 10 微信小程序路由跳转

    一.四种跳转方式 API路由详解 除了tabBar这种底部跳转的方法,我们还有路由跳转,以下四种方式: 1. wx.switchTab() :跳转到 tabBar 页面,并关闭其他所有非 tabBar ...

  7. C. The Big Race

    \(给出数n,a,b\) \(在[1,n]区间内随机选数,选出的数被a,b除后同余的概率\) \(这题的精度问题真的是烦炸了~\) \(设最小公倍数lcm=a*b/gcd(a,b)\) \(所以在区间 ...

  8. SQL SERVER 函数举例

    需求说明 将字符串按照指定的分隔符进行分割,并将结果按照从后往前的顺序倒序排列,拼接后的结果用‘/’符连接.(也可以按照指定符号分割为多个列,修改最后一部分即可) 创建测试表及数据 /* 创建一张测试 ...

  9. 使用ramdisk启动ubuntu文件系统

    环境 Qemu 4.1 vexpress-ca9 概述 为了减小linux内核的大小,可以把一些外设驱动编译成内核模块,但是在启动ubuntu的时候,需要读取flash,但是此时flash的驱动模块存 ...

  10. EEGLAB-批量处理.dat数据及保存脑电地形图

    步骤 1.先在图形界面操作一遍准备做的操作. 2.在命令行窗口输入 EEG.history 获取刚刚操作都用到哪些语句. 3.稍加修改即可以写一个批量化函数来读取生成数据. 4.在 EEGLAB\ee ...