Android query: adb shell for simulating keyboard and mouse events

Source: Internet
Author: User

Android query: adb shell for simulating keyboard and mouse events

1. Send Keyboard Events:

Command Format 1: adb shell input keyevent "value"

The value and corresponding key code are listed in the following table:

KeyEvent Value KEYCODE Comment
0 KEYCODE_UNKNOWN
1 The KEYCODE_MENU command in the SDK2.1 simulator is invalid, and the sendevent command is feasible.
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

Command Format 2: adb shell sendevent [device] [type] [code] [value]

For example, adb shell sendevent/dev/input/event0 1 229 1 means to press the menu key

Adb shell sendevent/dev/input/event0 1 229 0 means to press and release the 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 0

The number is obtained by manually clicking the menu key based on adb shell getevent.

The command is as follows:

Key Name CODE

MENU 229

Back HOME 102

BACK (back button) 158

Calls (CALL button) 231

END (end call button) 107


2. Send a mouse event (Touch ):

Command Format: 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 available event devices.

For definitions of type, code, and value, see kernel/include/linux/input. h.


Case 1: touch on a coordinate point

For example, if the x coordinate of the screen is 40 and the y coordinate is 210, run the following command:

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 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 groups of commands must be used together.


Scenario 2: simulate a sliding track (download and test with aPaint software)

The following example shows a horizontal line starting with (100,200) and ending with (108,200) on aPaint.

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 1 330 1 // touch

Adb shell sendevent/dev/input/event0 0 0 0

Adb shell sendevent/dev/input/event0 3 0 0 101 // step to point (101,200)

Adb shell sendevent/dev/input/event0 0 0 0

........................ // Must list each step, here just skip

Adb shell sendevent/dev/input/event0 3 0 0 108 // end point (108,200)

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


Example:

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


Click coordinate point (380,870) on the Zhan Xun platform:

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"

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.