码迷,mamicode.com
首页 > 移动开发 > 详细

【android学习】安卓设备实现触摸事件的监听,跨进程事件注入

时间:2014-07-29 18:04:32      阅读:323      评论:0      收藏:0      [点我收藏+]

标签:android   linux内核   事件注入   

最近想实现触摸屏的事件记录,并且分别做时间戳标记,类似于adb shell 下的getevent/setevent,查了很多资料,下面是一些总结。

实现方法:

1、利用onclick方法等。这种方法只能用于自己的Activity和View中,如果要检测其他Activity,比如键盘就不行了。

2、从linux内核入手。在事件分发前截获事件,可以对任意Activity实现事件捕获。


android触摸事件的流程:

http://blog.csdn.net/sunnyfans/article/details/8221505

在linux内核中,是直接向/dev/input/event*写入事件,然后另一个线程不断冲中读取事件。所以要实现监听与注入,就是实现对/dev/input/event*的读取和写入。


要求:

1、ROOT

2、获取su(超级用户权限)


分析event:

要明确各event代表的意思,我们用adb shell下的getevent 来说明

bubuko.com,布布扣

图上从上往下可以看到event6代表compass(指南针),event3代表触摸屏,下面是监听到的event7(光线感应)的事件。具体的协议可以参看这篇文章http://www.ddjava.com/blog/blog.html?blogId=612

此种方法可以实现在PC上对android设备事件的监听,但缺点是要连着电脑。如果无所谓脸部连着电脑,就可以到此为止了,再附送个处理数据的脚本http://www.jtben.com/document/919575


c4droid实现:

c4droid是一款在android手机上编译运行C/C++的应用,可以用c语言直接对底层linux内核操作。

http://tieba.baidu.com/p/2960331527#48299953890l


JAVA实现:

正在学习中···直播

获取su、监听dev/input/event*·····

【android学习】安卓设备实现触摸事件的监听,跨进程事件注入,布布扣,bubuko.com

【android学习】安卓设备实现触摸事件的监听,跨进程事件注入

标签:android   linux内核   事件注入   

原文地址:http://blog.csdn.net/zjccoder/article/details/38270965

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!