Android 获取屏幕事件的坐标

一般状况下咱们只能获取当前Activity的画面坐标,那有时候咱们须要作到一种相似于c++ hook的后台运行程序可以监听到前台用户的操做并记录下来,每每这类程序都是为自动化测试服务的。html

Android系统 getevent 方法:android

getevent 监控当前的事件,鼠标事件,按键事件,拖动滑动等c++

你们能够先经过 getevent -p 命令查看当前哪一个设备是Touchscreen,咱们经过监听Touchscreen设备的输出能够获得相应的x,y坐标值。shell

  --  监听event1

找到您的屏幕设备中0035和0036的含义,个人手机中能够看到x的值min为0,max为1172,y的值min为0,
max为1900。

sendevent 方法
adb shell sendevent [device] [type] [code] [value]
getevent /dev/input/event1

发送时间,格式和上面的同样,须要注意的是在get中code显示的是十六进制,而send中须要用十进制,例如测试

# sendevent /dev/input/event0 1 5 1
这个命令就是发送数字4的keydown消息,因此在屏幕上就会一直打印出不少个4(由于没有发送keyup)code

详细能够参考Google官方文档:htm

http://source.android.com/tech/input/getevent.html事件

相关文章
相关标签/搜索