Android uevent架构
来源:互联网 发布:python输出语句 编辑:程序博客网 时间:2024/05/22 01:45
Android很多事件都是通过uevent跟kernel来异步通信的。其中类UEventObserver是核心。 UEventObserver接收kernel的uevent信息的抽象类。
1、server层代码 1)battery server:
frameworks/base/services/java/com/android/server/SystemServer.java frameworks/base/services/java/com/android/server/BatteryService.java
2、java层代码
frameworks/base/core/java/android/os/UEventObserver.java
3、JNI层代码
frameworks/base/core/jni/android_os_UEventObserver.cpp
4、底层代码
hardware/libhardware_legacy/uevent/uevent.c读写kernel的接口socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT); 原理:通过kobject_uevent的方式通知应用层,往一个socket广播一个消息。应用层打开socket监听NETLINK_KOBJECT_UEVENT组的消息,就可以收到了。
插入耳机相关的代码:
hardware/libhardware_legacy/uevent frameworks/base/core/jni/android_os_UEventObserver.cpp frameworks/base/core/java/android/os/UEventObserver.java frameworks/base/services/java/com/android/server/SystemServer.java frameworks/base/services/java/com/android/server/HeadsetObserver.java
0 0
- 一、Android uevent架构
- Android uevent架构
- Android uevent架构
- Android uevent
- Android uevent
- Android Uevent
- Android UEVENT
- Android uevent
- android uevent
- Android uevent
- Android uevent
- Android uevent
- Android uevent
- Android uevent
- Android uevent
- android uevent
- Android UEvent
- linux/android uevent
- loadrunner-mysql脚本(odbc协议)
- sqlserver中获取最后一个字符所在的位置
- Threw NamingException with message: Name [spring.liveBeansView.mbeanDomain]
- open-flash-chart2参数对照表
- Java容器分析--数组
- Android uevent架构
- 2014年10月22日开始我的编程学习,第一个c程序 Hello World !
- com.mysql.jdbc.PreparedStatement和com.mysql.jdbc.PreparedStatement的关系
- MySql中bin目录下的exe作用
- openssl之BIO系列之3---BIO的声明和释放等基本操作
- 【JMeter连接SQLServer】采用window鉴权方式连接(原创)
- 视频相关
- Nofollow标签的写法以及运用
- Android开发通讯录小结