Android query: Simulate keyboard and mouse events (implemented by adb shell)

Source: Internet
Author: User

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
KEYCODE_MENU
The 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.

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]

 


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

 

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.