Android Sensors 总览(基于高通android平台)
Sensor分类专栏 总览
Sensor的作用
Sensor是指将收集到的信息转换成设备能处理的信号的元件或装置。
传感器收集转换的信号(物理量)有温度、光、颜色、气压、磁力、速度、加速度等。
大多数 Android 设备都有内置传感器,用来测量运动、屏幕方向和各种环境条件。这些传感器能够提供高度精确的原始数据,非常适合用来监测设备的三维移动或定位,或监测设备周围环境的变化。
例如: 陀螺仪的数据可以辅助camera进行 防抖算法的实现,运动传感器可以记录运动的步数,游戏设备可以根据传感器数据识别动作;磁传感器可以识别磁场方向实现罗盘功能等;
Android系统中Sensor
在Android系统中,Google为Sensor提供了统一的HAL接口, AOSP中封装了统一的sensor的访问接口,应用开发人员不用实现底层操作,使用固定的接口(SensorManager)即可完成sensor的操作;硬件抽象层(HAL)以及sensor 设备驱动层,AOSP中并不提供标准,由平台厂商提供框架及代码逻辑,设备驱动由sensor厂商根据框架环境,进行实现;
高通平台Sensor子系统实现方式
上面提到,HAL层及设备驱动层均需平台厂商提供框架及代码逻辑,在高通不同的设备平台上,有多种实现方式,可简单归为3种类别;
基于Linux kernel input driver实现设备驱动,通过event上报和nativer Sensor HAL 通信;
基于DDF框架sensor设备驱动,通过SSC框架处理,完成Sensor底层数据的处理与上报; Sensor HAL sensor1 libapi + sensor daemon; 两者基于QMI 相互通信;
基于SEE 结构的实现方式
后面对各种平台做较详细些的描述:
Sensor 专栏Blog 链接:
基于Google为Sensor提供的Framework框架规范,在AOSP中的主要内容:
AOSP sensor applicattion数据读取
AOSP Sensor Servervice
AOSP sensor Manage
高通平台 input kernel driver 通过event 与 Sensor HAL的框架相关内容:
Android Sensor Input类型 (二) Device Driver
Android Sensor Input类型 (三) Sensor Class
Android Sensor Input类型 (四) Sensor HAL 实现
Android Sensor Input类型 (五) Sensor HAL NativeSensorManager
SEE相关
原文地址:https://www.cnblogs.com/yujixuan/p/15015848.html
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- 进击吧!Pythonista(9/100)
- 数据结构基础(一)数组,矩阵
- pytest 测试框架学习(3):pytest.approx
- pytest 测试框架学习(4):pytest.fail
- SpringBoot 开发秘籍 - 启动时配置校验
- pytest 测试框架学习(5):pytest.skip
- pytest 测试框架学习(6):pytest.importorskip
- Java 自定义注解及使用场景
- pytest 测试框架学习(8):pytest.exit
- Linux傻瓜式四步完美安装Python3.7
- 【译】10 个最有用的 git log 技巧
- Hibernate的入门(Hibernate的环境搭建、Hibernate的API)
- pytest 测试框架学习(9):pytest.main
- 深入了解ActiveMQ!
- 完美解决 python ImportError: Failed to import any qt binding