1. Send keyboard events:
Adb shell input keyevent “value”
Value and corresponding key code are listed in the following table:
KeyEvent Value KEYCODE Comment 0 KEYCODE_UNKNOWN 1 KEYCODE_MENU The command fails in SDK2.1 simulator. Sendevent 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
Adb shell sendevent [device] [type] [code] [value]
For example, adb shell sendevent /dev/input_event0 1 229 1 press Down Press down the Menu key
Adb shell sendevent /dev/input_event0 1 229 0 press the release menu key
Note: The preceding commands must be used in combination
Complete command:
adb shell sendevent /dev/input/event4 1 139 1; adb shell sendevent /dev/input/event4 1 330 1; adb shell sendevent /dev/input/event4 0 0 0; adb shell sendevent /dev/input/event4 1 139 0; adb shell sendevent /dev/input/event4 1 330 0; adb shell sendevent /dev/input/event4 0 0 0
The number is obtained by manually clicking the Menu key according to adb shell Getevent
Other known commands are as follows:
Key Name CODE
MENU 229
HOME 102
BACK (back button) 158
CALL (call button) 231
END (end call button) 107
2. Send mouse events (Touch) :
Adb shell sendevent [device] [type] [code] [value]
sendevent /dev/input/eventX type code value
/dev/input.eventx corresponds to an event device. You can use getevent to obtain an event device
Type, code, the definition of value can see kernel/include/Linux/input. H
Case 1: Touch at a coordinate point
If you touch the screen at x 40 and y 210, the command is as follows
adb shell sendevent /dev/input/event0 3 0 40
adb shell sendevent /dev/input/event0 3 1 210
adb shell sendevent /dev/input/event0 1 330 1 //touch
adb shell sendevent /dev/input/event0 0 0 0 //it must have
adb shell sendevent /dev/input/event0 1 330 0 //untouch
adb shell sendevent /dev/input/event0 0 0 0 //it must have
Note: the above six sets of commands must be used together
Case 2: Simulated sliding tracks (downloadable and tested with aPaint software)
Here is an example of drawing a horizontal line on aPaint starting at (100,200) and ending at (108,200)
Adb shell sendevent /dev/input.event0 3 0 100 //start from point (100,200)
adb shell sendevent /dev/input/event0 3 1 200
adb shell sendevent /dev/input/event0 1 330 1 //touch
adb shell sendevent /dev/input/event0 0 0 0
Adb shell sendevent /dev/input/event0 3 0 101 step to point
adb shell sendevent /dev/input/event0 0 0 0
…………………………………… //must list each step, here just skip
Adb shell sendevent /dev/input.event0 3 0 108
adb shell sendevent /dev/input/event0 0 0 0
adb shell sendevent /dev/input/event0 1 330 0 //untouch
adb shell sendevent /dev/input/event0 0 0 0
Examples are as follows:
sendevent /dev/input/event4 3 0 258; sendevent /dev/input/event4 3 1 285; sendevent /dev/input/event4 1 330 1; sendevent /dev/input/event4 0 0 0; sendevent /dev/input/event4 1 330 0; sendevent /dev/input/event4 0 0 0
Spreadtrum platform click the coordinates (380,870) event:
adb shell “sendevent dev/input/event4 1 330 1; sendevent dev/input/event4 3 48 20; sendevent dev/input/event4 3 53 380; sendevent dev/input/event4 3 54 870; sendevent dev/input/event4 0 2 0; sendevent dev/input/event4 0 0 0; sendevent dev/input/event4 3 48 20; sendevent dev/input/event4 3 53 380; sendevent dev/input/event4 3 54 870; sendevent dev/input/event4 0 2 0; sendevent dev/input/event4 0 0 0; sendevent dev/input/event4 1 330 0; sendevent dev/input/event4 0 2 0; sendevent dev/input/event4 0 0 0”
adb shell “sendevent dev/input/event4 1 330 1; sendevent dev/input/event4 3 48 20; sendevent dev/input/event4 3 53 380; sendevent dev/input/event4 3 54 870; sendevent dev/input/event4 0 2 0; sendevent dev/input/event4 0 0 0; sendevent dev/input/event4 1 330 0; sendevent dev/input/event4 0 0 0”