研究了一上午的Android监听底层事件的机制,总结如下:
内核驱动监听硬件设备的状态和行为,通过uevent机制发送事件给用户空间;
用户空间通过UeventObserver来监听来自内核的uevent,进行处理。
内核空间和用户空间的通信使用了netlink机制。
参考的文章有:
Android使用UeventObserver:
http://blog.csdn.net/lushengchu_luis/article/details/9466405
http://blog.csdn.net/dfysy/article/details/7330919
Android使用uevent机制:
http://blog.csdn.net/yangwen123/article/details/9053527
http://www.cnblogs.com/qclzdh/archive/2011/06/13/2080166.html
Linux netlink机制:
http://*.com/questions/22667332/how-to-use-netlink-sockets-for-kernel-userspace-communication-android
http://blog.csdn.net/azloong/article/details/6799476