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();
|