input命令是用来向设备发送模拟操作的命令: 
因为版本不同,input命令也有所不同 
以下为Android 4.0的input命令:

usage:input text <string>
input keyevent <key code number or name>
input tap <x> <y>
input swipe <x1> <y1> <x2> <y2>
  • 1
  • 2
  • 3
  • 4
  • 5

以下是Android 4.4+的input命令:

usage: input ...
input text <string>
input keyevent <key code number or name>
input [touchscreen|touchpad|touchnavigation] tap <x> <y>
input [touchscreen|touchpad|touchnavigation] swipe <x1> <y1> <x2> <y2> [duration(ms)]
input trackball press
input trackball roll <dx> <dy>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

明显两个版本的input命令是有差异的,在使用的时候一定要记得查询清楚所使用的Android版本!


1、input text 
该命令主要是用于向获得焦点的EditText控件输入内容!

adb shell input text "hello,world"
  • 1

该方法只能对EditText输入AscII码的字符,对于UTF-8的字符是无法输入的!(汉字是不要想用这个命令输入的) 
关于某些程序希望实现到类似于按键精灵功能自动向文本框输入汉字的功能,可以使用一个比较取巧的办法。 
可以到github上参考https://github.com/senzhk/ADBKeyBoard~~(不要问我是怎么知道的T_T)

2、input keyevent 
该命令主要是向系统发送一个按键指令,实现模拟用户在键盘上的按键动作。

adb shell input keyevent 4
or
adb shell input keyevent "KEYCODE_BACK"
  • 1
  • 2
  • 3

下面附一个从网上扒到的 按键code 与 按键名的对应关系表

0 –> “KEYCODE_UNKNOWN” 
1 –> “KEYCODE_MENU” 
2 –> “KEYCODE_SOFT_RIGHT” 
3 –> “KEYCODE_HOME” 
4 –> “KEYCODE_BACK” 
5 –> “KEYCODE_CALL” 
6 –> “KEYCODE_ENDCALL” 
7 –> “KEYCODE_0” 
8 –> “KEYCODE_1” 
9 –> “KEYCODE_2” 
10 –> “KEYCODE_3” 
11 –> “KEYCODE_4” 
12 –> “KEYCODE_5” 
13 –> “KEYCODE_6” 
14 –> “KEYCODE_7” 
15 –> “KEYCODE_8” 
16 –> “KEYCODE_9” 
17 –> “KEYCODE_STAR” 
18 –> “KEYCODE_POUND” 
19 –> “KEYCODE_DPAD_UP” 
20 –> “KEYCODE_DPAD_DOWN” 
21 –> “KEYCODE_DPAD_LEFT” 
22 –> “KEYCODE_DPAD_RIGHT” 
23 –> “KEYCODE_DPAD_CENTER” 
24 –> “KEYCODE_VOLUME_UP” 
25 –> “KEYCODE_VOLUME_DOWN” 
26 –> “KEYCODE_POWER” 
27 –> “KEYCODE_CAMERA” 
28 –> “KEYCODE_CLEAR” 
29 –> “KEYCODE_A” 
30 –> “KEYCODE_B” 
31 –> “KEYCODE_C” 
32 –> “KEYCODE_D” 
33 –> “KEYCODE_E” 
34 –> “KEYCODE_F” 
35 –> “KEYCODE_G” 
36 –> “KEYCODE_H” 
37 –> “KEYCODE_I” 
38 –> “KEYCODE_J” 
39 –> “KEYCODE_K” 
40 –> “KEYCODE_L” 
41 –> “KEYCODE_M” 
42 –> “KEYCODE_N” 
43 –> “KEYCODE_O” 
44 –> “KEYCODE_P” 
45 –> “KEYCODE_Q” 
46 –> “KEYCODE_R” 
47 –> “KEYCODE_S” 
48 –> “KEYCODE_T” 
49 –> “KEYCODE_U” 
50 –> “KEYCODE_V” 
51 –> “KEYCODE_W” 
52 –> “KEYCODE_X” 
53 –> “KEYCODE_Y” 
54 –> “KEYCODE_Z” 
55 –> “KEYCODE_COMMA” 
56 –> “KEYCODE_PERIOD” 
57 –> “KEYCODE_ALT_LEFT” 
58 –> “KEYCODE_ALT_RIGHT” 
59 –> “KEYCODE_SHIFT_LEFT” 
60 –> “KEYCODE_SHIFT_RIGHT” 
61 –> “KEYCODE_TAB” 
62 –> “KEYCODE_SPACE” 
63 –> “KEYCODE_SYM” 
64 –> “KEYCODE_EXPLORER” 
65 –> “KEYCODE_ENVELOPE” 
66 –> “KEYCODE_ENTER” 
67 –> “KEYCODE_DEL” 
68 –> “KEYCODE_GRAVE” 
69 –> “KEYCODE_MINUS” 
70 –> “KEYCODE_EQUALS” 
71 –> “KEYCODE_LEFT_BRACKET” 
72 –> “KEYCODE_RIGHT_BRACKET” 
73 –> “KEYCODE_BACKSLASH” 
74 –> “KEYCODE_SEMICOLON” 
75 –> “KEYCODE_APOSTROPHE” 
76 –> “KEYCODE_SLASH” 
77 –> “KEYCODE_AT” 
78 –> “KEYCODE_NUM” 
79 –> “KEYCODE_HEADSETHOOK” 
80 –> “KEYCODE_FOCUS” 
81 –> “KEYCODE_PLUS” 
82 –> “KEYCODE_MENU” 
83 –> “KEYCODE_NOTIFICATION” 
84 –> “KEYCODE_SEARCH” 
85 –> “TAG_LAST_KEYCODE” 
感谢http://blog.csdn.net/yicao821/article/details/7327953 博主提供!!666666666……

3、input [touchscreen|touchpad|touchnavigation] tap 
该命令是用于向设备[屏幕、触摸板、导航键]发送一个点击操作的指令。参数是X Y。一般设备都是屏幕……

adb shell input tap 100 100 
  • 1

屏幕位置坐标的拾取,可以打开 设置-开发者选项-指针位置开关!打开之后就会有拾取的功能了哦!

4、input [touchscreen|touchpad|touchnavigation] swipe [duration(ms)] 
向设备发送一个滑动的指令,并且可以选择设置滑动的时长。 
这个指令乍一看不就是个滑动嘛……233333……其实还有一个特殊的操作,长按。 
这个指令在4.4+的机器上,可以实现长按的哦!

//滑动
adb shell input swipe 100 100 200 200 300 //从 100 100 经历300毫秒滑动到 200 200
//长按
adb shell input swipe 100 100 100 100 1000 //在 100 100 位置长按 1000毫秒
  • 1
  • 2
  • 3
  • 4

看,这次就明白了,长按就是一种特殊的滑动,即位置不变的滑动哦!

5、input trackball press 
这个命令是模拟轨迹球发送点击命令 
因为现在手机设备上没有轨迹球,然并卵……

6、input trackball roll 
这个命令是模拟轨迹球发送滚动命令 
同样,然并卵……

Android adb input 命令介绍的更多相关文章

  1. Android Debug Bridge命令介绍[转]

    Android Debug Bridge命令介绍 Android Debug Bridge的一些基本命令.这个工具直译过来就是Android调试桥的意思.它提供了强大的特性,例如复制文件到设备或从设备 ...

  2. Android ADB 常用命令

    Android ADB 常用命令 泛原罪 2016.09.21 00:02* 字数 605 阅读 2912评论 0喜欢 1 [TOC] adb logcat 查看日志 详细内容可参见 ADB Usag ...

  3. android adb常用命令

    android adb命令: adb root --获取root.adb remount --获取文件操作权限(push)adb shell pm list package 获取包名列表com.mqt ...

  4. 【安卓手机通用】android adb shell 命令大全

    浏览:3116 | 更新:2013-10-17 17:05 | 标签:安卓 android 一.[什么是shell] Linux系统的shell作为操作系统的外壳,为用户提供使用操作系统的接口.它是命 ...

  5. Android ADB常用命令使用

    Android SDK: adb shell 命令的使用(am.pm.wm.screencap.monkey等) https://blog.csdn.net/xietansheng/article/d ...

  6. adb常用命令介绍

    adb connect 命令格式:adb connect <host>[:<port>] 作用:connect to a device via TCP/IP,Port 5555 ...

  7. android后台input命令模拟按键【转】

    本文转载自:http://www.cnblogs.com/sh1o2os/archive/2013/02/05/2893201.html 有时做开发时,我们使用的触摸屏没有虚拟按键(HOME.BACK ...

  8. 将常用的Android adb shell 命令行封装为C#静态函数

    更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:adb命令是常用的Android命令行,自动化.代码调试.手工排查问题都会用的到,这里将常用的一些命令行封装 ...

  9. 自动化测试系列:将常用的Android adb shell 命令行封装为C#静态函数

    更多原创测试技术文章同步更新到微信公众号 :三国测,敬请扫码关注个人的微信号,感谢! 简介:adb命令是常用的Android命令行,自动化.代码调试.手工排查问题都会用的到,这里将常用的一些命令行封装 ...

随机推荐

  1. 内置函数 filter zip map

    1. 基本内置函数: 2. enumerate :  枚举 把列表转化为有索引的字典: 3. eval 和 exec 4. 过滤函数  filter 5. map 函数批量修改: 6. 配对函数 zi ...

  2. FastAdmin 的上传代码在哪里?

    FastAdmin 的上传代码在哪里? FastAdmin 默认是通过 Ajax 上传到本地. 使用 admin/ajax/upload 方式返回 url. 代码文件地址在 application\a ...

  3. Spring框架学习02——Spring IOC 详解

    1.Spring IOC的基本概念 IOC(Inverse of Control)反转控制的概念,就是将原本在程序中手动创建对象的控制权,交由Spring框架管理.当某个Java对象(调用者)需要调用 ...

  4. BZOJ.3329.Xorequ(数位DP)

    题目链接 x^3x=2x -> x^2x=3x 因为a^b+((a&b)<<1)=a+b,x^2x=x+2x,所以x和2x的二进制表示中不存在相邻的1. (或者,因为x+2x ...

  5. BZOJ.4555.[HEOI2016&TJOI2016]求和(NTT 斯特林数)

    题目链接 \(Description\) 求\[\sum_{i=0}^n\sum_{j=0}^iS(i,j)\times 2^j\times j!\mod 998244353\] 其中\(S(i,j) ...

  6. 洛谷P1432 倒水问题(CODEVS.1226)

    To 洛谷.1432 倒水问题 题目背景 In the movie "Die Hard 3", Bruce Willis and Samuel L. Jackson were co ...

  7. 面向对象&网络编程

    1 接口与归一化设计 1.1 归一化概念: 归一化的好处: 1.归一化让使用者无需关心对象的类是什么,只需要知道这些对象都具备某些功能就可以了,这极大降低了使用者的使用难度. 2.归一化使得高层的外部 ...

  8. 网络名词拾遗--part2

    网络名词拾遗--part2 关于所谓的连接上限 先要明白服务端和客户端的交互逻辑: 服务端创建socket 与提供对外服务的port端口绑定 开始监听 客户端向这个端口提出请求 服务端接收到这个请求后 ...

  9. 第一次打开app

    //判断是不是第一次启动应用 if (![[NSUserDefaults standardUserDefaults] boolForKey:@"everLaunched"]) { ...

  10. unity操作Hierarchy视图下同名的对象

    上周遇到了一个令我尴尬的问题,在同一个场景内有了两个名字相同的对象,给个形象化的栗子: 场景内有橱窗,橱窗是模型,窗户是可以打开的[点击控制],窗户可以控制打开和关闭的.然后我就选用了一个保守的方式进 ...