欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

UEventObserver在安卓应用开发中的使用

程序员文章站 2022-07-05 21:14:27
1、AOSP源码树下system/extras/tests/uevents/编译uevents可执行程序,放到板子上跑,可以打印uevent消息,对调试开发有用。2、AOSP源码树下编译出来的out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar作为依赖库添加到Android Studio项目中的build.gradle,使用compileOnly选项,如:ic6hisiCompileOnly files('...

1、AOSP源码树下system/extras/tests/uevents/编译uevents可执行程序,放到板子上跑,可以打印uevent消息,对调试开发有用。

2、AOSP源码树下编译出来的out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar作为依赖库添加到Android Studio项目中的build.gradle,使用compileOnly选项,如:

ic6hisiCompileOnly files('libs/android-ic2.jar')

其中android-ic2.jar就是上面提到的classes.jar文件改名得到的。

3、同步Android Studio工程,注册监控消息,并做相应的处理。


private UEventObserver mPtzObserver = new UEventObserver() {
    @Override
    public void onUEvent(UEventObserver.UEvent event) {
        KLog.i("收到事件消息:" + event);
    }
};

开始监控:

mPtzObserver.startObserving("DEVPATH=/devices/soc/soc:senter_ptz/senter_ptz/ptz_uevent");

其中待过滤的字符串"DEVPATH=/devices/soc/soc:senter_ptz/senter_ptz/ptz_uevent"可以从控制台程序uevents的输出中获取,也可以类似替换为"SUBSYSTEM=senter_ptz"。


停止监控:

mPtzObserver.stopObserving();

 

本文地址:https://blog.csdn.net/lancewoo/article/details/107561266