Android UEvent
来源:互联网 发布:mac下载软件需要验证 编辑:程序博客网 时间:2024/05/21 17:57
Android很多事件都是通过uevent跟kernel来异步通信的。其中类UEventObserver是核心。UEventObserver接收kernel的uevent信息的抽象类。1、server层代码 1)battery server: frameworks/frameworks/base/services/java/com/android/server/SystemServer.javaframeworks/frameworks/base/services/java/com/android/server/BatteryService.java2、java层代码 frameworks/base/core/java/android/os/UEventObserver.java3、JNI层代码 frameworks/base/core/jni/android_os_UEventObserver.cpp4、底层代码 hardware/libhardware_legacy/uevent/uevent.c 读写kernel的接口socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
二、UEventObserver的使用
类UEventObserver提供了三个接口给子类来调用:1、onUEvent(UEvent event) 子类必须重写这个onUEvent来处理uevent。2、startObserving(String match) 启动进程,要提供一个字符串参数。3、stopObserving() 停止进程。例子: //在BatteryService.java中 mUEventObserver.startObserving("SUBSYSTEM=power_supply"); private UEventObserver mUEventObserver = new UEventObserver() { @Override public void onUEvent(UEventObserver.UEvent event) { update(); } }; 在UEvent thread中会不停调用 update()方法,来更新电池的信息数据。
阅读全文
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架构
- linux/android uevent
- android init 与 uevent
- android 关于 netlink uevent
- vs2015打开VS2010的工程时,无法解析的外部符号 __imp___vsnprintf(转载)
- STM32的硬件I2C与AT24C16
- 文本分类学习链接
- [leetcode]: 551. Student Attendance Record I
- 单片机常用芯片MAX7219驱动
- Android UEvent
- 51nod 1639 绑鞋带 (组合数学)
- 关于人工智能的思考
- tail head -n的符号不同的区别
- nodejs中的ejs模板学习
- 技能掌握
- 【cmd】中文化
- java实现二叉排序树实现前中后遍历
- BASE64编码解码快代码