Android 使用 sendevent 模拟鼠标和键盘事件

这篇文章是从网络整理的。

模拟原理是对驱动发送消息,就是linux里面的input子系统。

命令格式: sendevent /dev/input/eventX [type] [key] [value]

其中/dev/input/eventX 对应的是设备,可以用getevent查看可用设备。

type,key,value这些定义在linux源代码里面的input.h文件里面。

 

例:发送一个鼠标单击事件

sendevent /dev/input/event0 1 272 1 //1表示发送按键,272是鼠标左键,1表示按下
sendevent /dev/input/event0 0 0 0 //上报事件
sendevent /dev/input/event0 1 272 0
sendevent /dev/input/event0 0 0 0


而在linux里面也有类似的用法,linux应用可以使用uinput模拟按键。

The Linux 2.6.x provides a “uinput” driver, which helps users to inject data to the Linux kernel.
This is very useful while writing applications to interface customized input devices like wireless
joystick, keyboard etc.

你可能感兴趣的:(Android)