按键与KEYCODE使用

一、手机常见按键:

  1)HOME 主屏幕键

  2) MENU 菜单键

  3) BACK 返回键

  4) VOLUME_UP 音量加键

  5) VOLUME_DOWN 音量减键

  6) RecentApps 最近使用app

  7) POWER 电源键

  8) Dpad 上下左右键

  9) ......

二、按键API说明:

返回值 方法名 描述
boolean pressBace() 模拟短按返回back键
boolean pressDPadCenter() 模拟轨迹球中点按键
boolean pressDPadDown() 模拟轨迹球向下按键
boolean pressDPadLeft() 模拟轨迹球向左按键
boolean pressDPadRight() 模拟轨迹球向右按键
boolean pressDPadUp() 模拟轨迹球向上按键
boolean pressDelete() 模拟短按删除delete按键
boolean pressEnter() 模拟短按回车键
boolean pressHome() 模拟短按home键
boolean pressKeyCode(int keyCode, int metaState) 模拟短按键盘代码keyCode
boolean pressKeyCode(int keyCode) 模拟短按键盘代码keyCode
boolean pressMenu() 模拟短按menu键
boolean pressRecentApps() 模拟短按最近使用程序
boolean pressSearch() 模拟短按搜索键

举例:

package com.uiautomatortest;

import android.os.Bundle;
import android.os.RemoteException; import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class Test extends UiAutomatorTestCase { public void testHome(){ UiDevice.getInstance().pressHome();
sleep(2000);
} public void testMenu(){ UiDevice.getInstance().pressMenu();
sleep(2000);
} public void testRecent() throws RemoteException{ UiDevice.getInstance().pressRecentApps();
sleep(2000);
} }

Test.java

三、KEYCODE 键盘映射码:

  1)KeyEvent 按键事件

  2)META KEY

    辅助功能键:ALT、SHIFT、CAPS_LOCK

激活状态 metaState
base META_key未被激活 0
caps Shift或Caps Lock被激活 1
fn Alt被激活 2
caps_fn Alt、Shift或Caps Lock同时被激活 3

举例:

package com.uiautomatortest;

import android.os.Bundle;
import android.os.RemoteException;
import android.view.KeyEvent; import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.testrunner.UiAutomatorTestCase; public class Test extends UiAutomatorTestCase { public void testHome(){ UiDevice.getInstance().pressHome();
sleep(2000);
} public void testMenu(){ UiDevice.getInstance().pressMenu();
sleep(2000);
} public void testRecent() throws RemoteException{ UiDevice.getInstance().pressRecentApps();
sleep(2000);
} public void testKeyCode(){ UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A); //小写a
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_B); //小写b
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_C); //小写c UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A,1); //大写A
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_B,1); //大写B
UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_C,1); //大写C } }

Test.java

Android无线测试之—UiAutomator UiDevice API介绍二的更多相关文章

  1. Android无线测试之—UiAutomator UiDevice API介绍一

    UiDevice 类介绍 1.UiDevice 代表设备状态 2.UiDevice 为单例模式 获取UiDevice实例的方式: 1) UiDevice.getInstance() 2) getUiD ...

  2. Android无线测试之—UiAutomator UiDevice API介绍八

    获取包名.开启通知栏.快速设置.获取布局文件的方法 一.包名.通知栏.快速设置.布局文件等相关知识: 1)包名:标示应用的符号,每个应用的名字 2)通知栏:从主界面的顶端向下拉,就可以打开通知栏 3) ...

  3. Android无线测试之—UiAutomator UiDevice API介绍四

    拖拽与滑动 一.概念介绍: 1)拖拽:将组建从一个坐标移动到另一个坐标 2)移动:从一二坐标点移动到另一个坐标点 3)步长:从一点滑动到另一点使用的时间 二.拖拽与滑动的相关API: 返回值 方法名 ...

  4. Android无线测试之—UiAutomator UiScrollable API介绍二

    快速滑动 一.快速滑动相关概念 1.步长:从一点滑动到另一点所用的时间 2.扫动次数:例如列表,要滑动多少次才能到底部,这个滑动次数就是扫动次数 二.相关API 返回值 API 描述 boolean ...

  5. Android无线测试之—UiAutomator UiObject API介绍二

    点击与长按 一.组件区域位置关系 Rect 对象代表一个矩形区域 [Left,Top] [Right,Bottom] 二.点击与长按API 返回值 API 描述 boolean click() 点击对 ...

  6. Android无线测试之—UiAutomator UiDevice API介绍七

    截图与等待空闲 一.截图和等待空闲相关知识: 1)图片缩放比例:例如图片从100像素缩小到50像素 2)图片质量:是指图片大小,质量越高图片越大,质量越低图片越小 3)File类:指的是一个文件或者一 ...

  7. Android无线测试之—UiAutomator UiDevice API介绍六

    一.灭屏和唤醒屏幕相关知识: 1)灭屏:按电源键将屏幕熄灭 2)唤醒屏幕:在灭屏状态下按电源键唤醒屏幕 二.灭屏与唤屏相关的API: 返回值 方法名 描述 void wakeUp() 模拟按电源键,如 ...

  8. Android无线测试之—UiAutomator UiDevice API介绍五

    屏幕旋转 一.屏幕旋转相关知识: 1)旋转方向:0度,90度(向左转),180度,270度(向右转) 2)重力感应器:重力感应器是旋转所依靠的 3)固定位置:指将屏幕方向固定在0度,90度或者180度 ...

  9. Android无线测试之—UiAutomator UiDevice API介绍三

    获取坐标与坐标点击 一.坐标相关的知识: 1)手机屏幕坐标:左上角开始到右下角结束 2)DP:设备独立像素,例如320像素显示到640像素上要拉伸一倍 3)Point:代表一个点(x,y),左上角的坐 ...

随机推荐

  1. MongoDB分片集群新增分片(自用)

    机器IP为192.168.58.11,计划在上面新建两个分片并添加到原有分片集群中. 实施如下: 1.58.11创建mongodb文件夹 mkdir -p /opt/mongodb cd  /opt/ ...

  2. 2017.11.15 hashmap的工作原理

    参考来自:http://blog.csdn.net/jeffleo/article/details/54946424 一 hashMap的基本概念 1.HashMap的定义 public class ...

  3. 谋哥:玩App怎么赚钱(三)

    谋哥每天坚持写文章,如今写作速度是越来越快了,当然这样也能节省点时间.只是坚持每天写,确实须要极大的耐力和毅力,由于偶然事件会影响你心情和灵感.只是我一直相信秦刚老师(微信/QQ1111884 )说的 ...

  4. zStack学习笔记(原创,绝对不是抄的……)

    我之前写的文章都没写上面那句,但是这篇写了,主要是因为zStack文章抄袭太严重……故此声明 因为涉及到数据的双向交互问题,所以在这里我考虑使用协议栈来实现数据的收发.首先说下如何在Zstack中添加 ...

  5. javascript - 实现jquery类似的$调用方法

    var $ = { name: function (name) { return name; }, age: function (age) { return age; }, numCount: fun ...

  6. poj1113Wall 求凸包周长 Graham扫描法

    #include<iostream> #include<algorithm> #include<cmath> using namespace std; typede ...

  7. C++11 新特性之 变长參数模板

    template <typename ... ARGS> void fun(ARGS ... args) 首先明白几个概念 1,模板參数包(template parameter pack) ...

  8. 一种在MVC3框架里面设置模板页的方法,不使用_ViewStart

    1.新建MasterFilterAttribute类继承ActionFilterAttribute,重写方法OnActionExecuted ,指定ViewResult的MasterName = &q ...

  9. ssl中间证书

    中间证书,其实也叫中间CA(中间证书颁发机构,Intermediate certificate authority, Intermedia CA),对应的是根证书颁发机构(Root certifica ...

  10. chrome扩展(浏览器插件)开发实用教程

    原创文章,转载请注明出处. 作者:简体字丶冯; QQ:564372931 1.Chrome能搞这些事情 (1)     操作浏览器中打开的页面DOM 这能做什么哪?譬如说你想修改页面DOM(DOM是什 ...