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”