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. 顺序表的C语言实现

    在现实应用中,有两种实现线性表数据元素存储功能的方法,分别是顺序存储结构和链式存储结构.顺序表操作是最简单的操作线性表的方法.下面的代码实现了顺序表的几种简单的操作.代码如下 //start from ...

  2. 关于【MySQL 子查询——查询最大值】的补充说明

    昨天在使用子查询查找最高分和最低分时遇上了一点问题,情况是这样的:如果找到的最高分或最低分是唯一值则不会有什么问题,但如果有其它班级学生的成绩恰好与查询的最高分或最低分相同时就会把那个学生的信息也显示 ...

  3. 70行实现Promise核心源码

    70行实现Promise核心源码 前言: ​ 一直以来都是只会调用Promise的API,而且调API还是调用axios封装好的Promise,太丢人了!!!没有真正的去了解过它的原理是如何实现的,自 ...

  4. zabbix监控nginx日志状态码

    监控需求 监控Nginx常见的状态码并对其进行监控,对常见的错误状态码创建相对应的触发器以下按照分钟对数据进行抓取 Zabbix_Agentd创建监控脚本 1)创建脚本之前核对Nginx日志格式我这里 ...

  5. LateX的简单字体设置(颜色,居中,大小等)

    \(\color{red}{Ⅰ.文本单行居中}\) $$\text{我是蒟蒻}$$ \[\text{我是蒟蒻} \] \(\color{Black}{Ⅱ.设置字体颜色}\) $$\color{Purp ...

  6. matlab数值数据和变量名

    1.2MATLAB数值数据 l  数值数据类型的分类 l  数值数据的输出格式 l  常用数学函数内部函数 1.数值数据类型的分类 l  整型 l  浮点型 l  复数型 (1)整型 1.数值数据类型 ...

  7. Coursera课程笔记----P4E.Capstone----Week 2&3

    Building a Search Engine(week 2&3) Search Engine Architecture Web Crawling Index Building Search ...

  8. Coursera课程笔记----计算导论与C语言基础----Week 3

    存储程序式计算机 冯·诺伊曼式计算机 "关于EDVAC的报告草案" 组成:控制器(协调工作).运算器(算数&逻辑运算).存储器(存储操作信息和中间结果).输入设备.输出设备 ...

  9. 【HBase】HBase基本介绍和基础架构

    目录 基本介绍 概述 特点 HBase和Hadoop的关系 RDBMS与HBase的对比 特征 基础架构 基本介绍 概述 HBase是bigtable的开源java版本,是建立在HDFS之上,提供高可 ...

  10. STM32 TIM高级定时器死区时间的计算

    STM32 TIM高级定时器的互补PWM支持插入死区时间,本文将介绍如何计算以及配置正确的死区时间. 文章目录 什么是死区时间? 数据手册的参数 如何计算合理的死区时间? STM32中配置死区时间 什 ...