android命令行模拟输入事件

作者 : 开心源码 本文共2505个字,预计阅读时间需要7分钟 发布时间: 2022-05-12 共200人阅读

通过adb shell input可以模拟android各种输入事件,比方文字、按键、触摸等等。

image.png

基本用法

usage: input [text|keyevent]  input text <string>  input keyevent <event_code>

输入文字

列子:

adb shell input text sample-text

而包含字符可以使用引号包裹,其中%s代表空格。

adb shell input text "insert%syour%stext%shere"

模拟按键

通过adb shell input keyevent可以模拟按键,后面跟按键code。比方:

adb shell input keyevent 82

所有按键code列表如下:

0 -->  "KEYCODE_0" 1 -->  "KEYCODE_SOFT_LEFT" 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 -->  "KEYCODE_MEDIA_PLAY_PAUSE"86 -->  "KEYCODE_MEDIA_STOP"87 -->  "KEYCODE_MEDIA_NEXT"88 -->  "KEYCODE_MEDIA_PREVIOUS"89 -->  "KEYCODE_MEDIA_REWIND"90 -->  "KEYCODE_MEDIA_FAST_FORWARD"91 -->  "KEYCODE_MUTE"92 -->  "KEYCODE_PAGE_UP"93 -->  "KEYCODE_PAGE_DOWN"94 -->  "KEYCODE_PICTSYMBOLS"...122 -->  "KEYCODE_MOVE_HOME"123 -->  "KEYCODE_MOVE_END"

最新的可以参考官方文档:https://developer.android.com/reference/android/view/KeyEvent.html

模拟触摸

通过 tap可以模拟触摸事件,参数是<x, y>

adb shell input tap 500 1450

滑动则可以通过swipe模拟,参数是<x1 y1 x2 y2 time>

adb shell input swipe 100 500 100 1450 100

巧妙使用swipe也可以模拟长按事件:

adb shell input swipe 100 500 100 500 250

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » android命令行模拟输入事件

发表回复