ADB 命令之 模拟按键/输入

ADB 命令之 模拟按键/输入

模拟按键/输入

在 ​​adb shell​​​ 里有个很实用的命令叫 ​​input​​,通过它可以做一些有趣的事情。

​​input​​ 命令的完整 help 信息如下:

Usage: input [<source>] <command> [<arg>...]

The sources are:

mouse

keyboard

joystick

touchnavigation

touchpad

trackball

stylus

dpad

gesture

touchscreen

gamepad

The commands and default sources are:

text <string> (Default: touchscreen)

keyevent [--longpress] <key code number or name> ... (Default: keyboard)

tap <x> <y> (Default: touchscreen)

swipe <x1> <y1> <x2> <y2> [duration(ms)] (Default: touchscreen)

press (Default: trackball)

roll <dx> <dy> (Default: trackball)

比如使用 ​​adb shell input keyevent <keycode>​​​ 命令,不同的 keycode 能实现不同的功能,完整的 keycode 列表详见 ​ ​KeyEvent​​,摘引部分我觉得有意思的如下:

下面是 ​​input​​ 命令的一些用法举例。

电源键

命令:
adb shell input keyevent 26

执行效果相当于按电源键。

菜单键

命令:

adb shell input keyevent 82

HOME 键

命令:

adb shell input keyevent 3

返回键

命令:

adb shell input keyevent 4

音量控制

增加音量:

adb shell input keyevent 24

降低音量:

adb shell input keyevent 25

静音:

adb shell input keyevent 164

媒体控制

播放/暂停:

adb shell input keyevent 85

停止播放:

adb shell input keyevent 86

播放下一首:

adb shell input keyevent 87

播放上一首:

adb shell input keyevent 88

恢复播放:

adb shell input keyevent 126

暂停播放:

adb shell input keyevent 127

点亮/熄灭屏幕

可以通过上文讲述过的模拟电源键来切换点亮和熄灭屏幕,但如果明确地想要点亮或者熄灭屏幕,那可以使用如下方法。

点亮屏幕:

adb shell input keyevent 224

熄灭屏幕:

adb shell input keyevent 223

滑动解锁

如果锁屏没有密码,是通过滑动手势解锁,那么可以通过 ​​input swipe​​ 来解锁。

命令(参数以机型 Nexus 5,向上滑动手势解锁举例):

adb shell input swipe 300 1000 300 500

参数 ​​300 1000 300 500​​​ 分别表示​​起始点x坐标 起始点y坐标 结束点x坐标 结束点y坐标​​。

输入文本

在焦点处于某文本框时,可以通过 ​​input​​ 命令来输入文本。

命令:
adb shell input text hello

现在 ​​hello​​ 出现在文本框了。

相关推荐
LLON erva1 分钟前
Redis-配置文件
数据库·redis·oracle
童话ing2 分钟前
【Redis】026 互联网大厂 Redis 面试高频题
数据库·redis·面试
钰衡大师3 分钟前
Activiti 7 工作流技术文档
java·数据库·spring boot
Treh UNFO7 分钟前
nginx的重定向
大数据·数据库·nginx
jvvz afqh15 分钟前
mysql用户名怎么看
数据库·mysql
eDEs OLDE19 分钟前
CC++链接数据库(MySQL)超级详细指南
c语言·数据库·c++
EXnf1SbYK19 分钟前
Redis分布式锁进阶第八篇:锁超时乱序深度踩坑 + 看门狗失效真实溯源 + 业务长耗时标准化兜底方案
数据库·redis·分布式
EXnf1SbYK29 分钟前
Redis分布式锁进阶第十一篇
数据库·redis·分布式
xiaohe0734 分钟前
C#数据库操作系列---SqlSugar完结篇
网络·数据库·c#
冬奇Lab38 分钟前
RAG 系列(六):向量数据库——存储与检索的基础设施
数据库·人工智能·llm