Android Sensor详解(7)sensor framework层详解第二篇

copy from : http://blog.csdn.net/u013983194/article/details/72123143


目录(?)[+]

app注册传感器监听

在上一篇我们就已经写了一点关于app是如何拿到acc sensor的一些demo code。那么这边再一次为大家解释一下这个过程。

这点我们从app注册sensor监听开始,注册工作是有SystemSensorManager类的RegisterListener方法来完成 
如下图 

那么我们还可以看一下使能sensor与设置延时值的调用关系 

建立service与manager的链接

建立链接的调用过程

SystemSensorManger进入循环

当建立好链接,那么下面就是要进行数据上报了。通过sensorevent得到值 

SensorEvent的处理

sensorservice在sensormanger的初始化的过程中就已经进入threadloop,但是因为所有传感器还处于disable的状态,故一直处于 poll SensorEvent未返回的状态 
在SystemSensorManager开始注册传感器监听后,相应的传感器被enable,开始上报SensorEvnet,SensorService的threadloop中也就开始了循环poll SensorEvent并处理了。

sensor传递的整体流程如下: 

那么它所传递数据格式如下: 
 
sensorEvent的传递方式 
 
sensorservice线程循环读取HAL层数据 
 
systemsensormanager线程循环处理事情 
 
listenerDelegate处理sensorEvent 

取消对传感器的监听

从记录中去掉监听者所监听的传感器即可


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值