adb shell 模拟发送按键
来源:互联网 发布:mysql去重函数 编辑:程序博客网 时间:2024/05/16 11:58
原文地址:http://blog.sina.com.cn/s/blog_8acf1be10102w01x.html
模拟按键
1. 模拟按键的Down or UP事件
【音量减 按下】114是按键值
sendevent /dev/input/event1 1 114 1
sendevent /dev/input/event1 0 0 0
【音量减 抬起】
sendevent /dev/input/event1 1 114 0
sendevent /dev/input/event1 0 0 0
2. 模拟按键
//这条命令相当于按了设备的Backkey键
adb shell input keyevent 4
adb shell input keyevent
//在屏幕上做划屏操作,前四个数为坐标点,后面是滑动的时间(单位毫秒)
adb shell input swipe 50 250 250 250 500
//在屏幕上点击坐标点x=50
adb shell input tap 50 250
//输入字符abc
adb shell input text abc
3. 获取热键值
//将16进制转换为10进制就是对应的按键值
adb shell getevent
===============================================================
以下转载自:http://blog.csdn.net/chen825919148/article/details/18732167
android测试之getevent/sendevent
针对特定设备,而对于其他设备引导性不强,故整理处本文,望对初学者有个有力的帮助:
getevent 旨在获取android设备的事件信息,具体参考详细用法(本人亦初学者一枚,无法深入解释)
sendevent 则可以向设备发送模拟事件,其中包括touch和keypress
详细用法如下:
源码复制打印?
首先,adb shell进入android设备,运行getevent命令得到如下信息,为各类事件的驱动设备,每部
硬件可能都不一样,可以说无规律可循,个人觉得掠过吧
源码复制打印?
add device 1: /dev/input/event1
name: "pmic8xxx_pwrkey"
add device 2: /dev/input/event3
name: "apq8064-tabla-snd-card Headset Jack"
add device 3: /dev/input/event2
name: "apq8064-tabla-snd-card Button Jack"
add device 4: /dev/input/event5
name: "gpio-keys"
could not get driver version for /dev/input/mice, Not a typewriter
add device 5: /dev/input/event0
name: "atmel_mxt_ts"
add device 6: /dev/input/event4
name: "mhl_rcp"
在点击设备屏幕之后得到:
源码复制打印?
/dev/input/event0: 0003 0039 000002a5
/dev/input/event0: 0003 0030 00000004
/dev/input/event0: 0003 0035 0000017b
/dev/input/event0: 0003 0036 000001cf
/dev/input/event0: 0003 003a 0000001c
/dev/input/event0: 0000 0000 00000000
/dev/input/event0: 0003 0039 ffffffff
/dev/input/event0: 0000 0000 00000000
很难辨认,加-l参数后得到 ( getevent -l )
源码复制打印?
/dev/input/event0: EV_ABS ABS_MT_TRACKING_ID 000002a6