Read /dev/input/event in android via Java programm

2019-03-15 17:57发布

问题:

I want to record all the input events done across the android phone, save it in some file and later use that file to see what user input has happened at what time. AFAIK, i should invoke /dev/input/event* to get the input events. Please guide me so as to how can I do the same via an Android Activity.

回答1:

You can do it on a rooted phone only. There is a sample on how to inject events, here: http://www.pocketmagic.net/?p=2640 . To get the events, simply do a read on /dev/input .

Also have a look on the GetEvent application, included in the Android source code. It does just that. The code is on the second part of the article, direct link here: https://www.pocketmagic.net/programmatically-injecting-events-on-android-part-2/

Code also available on github, here: https://github.com/radhoo/android-event-injector