Appium自动化(13) - 详解 Keyboard 类里的方法和源码分析
如果你还想从头学起Appium,可以看看这个系列的文章哦!
https://www.cnblogs.com/poloyy/category/1693896.html
前言
Keyboard 类在 appium\webdriver\extensions 下的 keyboard.py 模块中
- 属于键盘操作类
hide_keyboard(self: T, key_name: Optional[str] = None, key: Optional[str] = None, strategy: Optional[str] = None)
作用
隐藏设备上的键盘
参数讲解(参数仅适用iOS)
- key_name:iOS 才需要此参数
- key:不知道....
- strategy:隐藏键盘的模式
用法
driver.hide_keyboard()
源码解析

- data 字典类型,用于存储传给方法的参数
- 如果传的参数不为None,则都会添加到 data 中
- 最后调用execute() ,执行对应操作
is_keyboard_shown(self: T)
作用
检查当前键盘是否已出现
返回
如果键盘已出现,则返回True
用法
print(driver.is_keyboard_shown())
keyevent(self: T, keycode: int, metastate: Optional[int] = None)
作用
发送按键code,模拟手机按键【Android专属】
参数讲解
- keycode:按键代码
- metastate:键码的元信息(不知道有啥用)
keyCode查找可看此地址
http://developer.android.com/reference/android/view/KeyEvent.html
注意
现在这方法其实已经过时了,用下面的press_keycode取代它,否则可能会报以下错误
warn: [DEPRECATED] The keyevent function has been deprecated and will be removed. Please use the pressKeyCode function instead.
用法
driver.keyevent(4)
press_keycode(self: T, keycode: int, metastate: Optional[int] = None, flags: Optional[int] = None)
作用
发送按键code,模拟手机按键【Android专属】
参数讲解
- keycode:按键代码
- metastate:键码的元信息(不知道有啥用)
- flags:按键事件的合集
用法
driver.press_keycode(4)
long_press_keycode(self: T, keycode: int, metastate: Optional[int] = None, flags: Optional[int] = None)
作用
按键code长按发送给设备,模拟手机按键【Android专属】
参数讲解
- keycode:按键代码
- metastate:键码的元信息(不知道有啥用)
- flags:目标按键事件
用法
driver.long_press_keycode(4)
按键代码列表
电话键

控制键


组合键

基础键



Appium自动化(13) - 详解 Keyboard 类里的方法和源码分析的更多相关文章
- Appium自动化(12) - 详解 HardwareActions 类里的方法和源码分析
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 前言 HardwareAction ...
- Appium自动化(11) - 详解 Applications 类里的方法和源码解析
如果你还想从头学起Appium,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1693896.html 前言 Applications 类 ...
- Java源码详解系列(十一)--Spring的使用和源码
Spring 是一个一站式的 Java 框架,致力于提高我们项目开发的效率.通过 Spring,我们可以避免编写大量额外代码,更专注于我们的核心逻辑.目前,Spring 已经成为最受欢迎的 Java ...
- 【python进阶】详解元类及其应用1
前言 元类在python中是很重要的一部分,我将分两次去讲解元类及其应用,此篇为详解元类及其应用第一篇,下面开始今天的说明~~~ 1. 类也是对象 在⼤多数编程语⾔中,类就是⼀组⽤来描述如何⽣成⼀个对 ...
- unity3D游戏开发之详解Animation类和Animator类
详解Animator类和Animation类 链接: http://wenku.baidu.com/link?url=SiaUYcdrNYjOYrWVDJSKGAYdJOntMTOhsVJtyBk2i ...
- 【python进阶】详解元类及其应用2
前言 在上一篇文章[python进阶]详解元类及其应用1中,我们提到了关于元类的一些前置知识,介绍了类对象,动态创建类,使用type创建类,这一节我们将继续接着上文来讲~~~ 5.使⽤type创建带有 ...
- Unity3D - 详解Quaternion类(二)
OK,不做引子了,接上篇Unity3D - 详解Quaternion类(一)走起! 四.Quaternion类静态方法 Quaternion中的静态方法有9个即:Angle方法.Dot方法.Euler ...
- Unity3D - 详解Quaternion类(一)
一.简介 Quaternion又称四元数,由x,y,z和w这四个分量组成,是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念.四元数的乘法不符合交换律.从明确地角度而言,四元数是复数的不可交 ...
- 13.详解oauth2授权码流程
13.详解oauth2授权码流程 把登陆系统单独独立出来,可以给自己写的微服务用,也可以给第三方的系统调用我们的服务 显式的和隐式的,两种方式,
随机推荐
- 2019-2020-1 20199303《Linux内核原理与分析》第七周作业
进程的描述 1.进程概念 进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位.进程由程序段.数据段.PCB组成 2.PCB中的信息 ①进程标识符 ②处理机状态 ③进程调度信息 ④进程控制 ...
- 2019-2020-1 20199328《Linux内核原理与分析》第六周作业
使用gdb跟踪分析一个系统调用内核函数 首先我们删除本身的menu目录,并从github上克隆一个menu,并进行编译 编译过程 现在找到test.c文件,加入上个实验中做的getPid()方法 利用 ...
- windows server 2012 R2系统安装部署SQLserver2016企业版(转)
转自 https://blog.csdn.net/qq_35938548/article/details/80272288 安装sql server是一个很繁琐的事情,花了一下午时间倒腾,现记录下整 ...
- XML--XML作用
XML 把数据从 HTML 分离 如果你需要在 HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML. 通过 XML,数据能够存储在独立的 XML 文件中.这样你就可以专注 ...
- 思维+模拟--POJ 1013 Counterfeit Dollar
Sally Jones has a dozen Voyageur silver dollars. However, only eleven of the coins are true silver d ...
- RF(控制台及日志输出中文乱码)
1.查看 ride 版本,我这里是 RIDE 1.7.4.1 running on Python 3.6.0. 2.修改文件 D:\python3.6\Lib\site-packages\roboti ...
- MySQL命令3
连接 mysql -u username -p 查看进程 SHOW processlist
- 系统基础优化 vim
系统基础优化 vim 1系统基础优化 (CPU-lscpu 内存-free 磁盘-df 负载-w/uptime) 1.1 系统基础优化 准备工作:如何查看系统的信息 (1)cat /etc/redha ...
- 手把手教你进行Scrapy中item类的实例化操作
接下来我们将在爬虫主体文件中对Item的值进行填充. 1.首先在爬虫主体文件中将Item模块导入进来,如下图所示. 2.第一步的意思是说将items.py中的ArticleItem类导入到爬虫主体文件 ...
- Synchronized加锁、锁升级和java对象内存结构
首先了解一下JMM中定义的内存操作: 一个线程操作数据时候都是从主内存(堆内存)读取到自己工作内存(线程私有的数据区域)中再进行操作.对于硬件内存来说,并没有工作内存和主内存的区分,这都是java内存 ...