1 / 21
文档名称:

【Android系统原理与开发要点详解】12_Android的传感器系统.pdf

格式:pdf   页数:21
下载后只包含 1 个 PDF 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

【Android系统原理与开发要点详解】12_Android的传感器系统.pdf

上传人:翩仙妙玉 2012/7/14 文件大小:0 KB

下载得到文件列表

【Android系统原理与开发要点详解】12_Android的传感器系统.pdf

文档介绍

文档介绍:Android 的传感器系统
Android 的传感器系统
第一部分传感器系统综述
第二部分传感器系统层次结构
第三部分传感器系统的硬件抽象层
第四部分传感器系统的使用
第一部分传感器系统综述
传感器( Sensor )系统可以让智能手机
的功能更加丰富多彩,在 Android 系统中支持多
种传感器。
Android 的 Sensor 系统涉及了 Android 的各
个层次。
Android 系统支持多种传感器,有的传感器
已经在 Android 的框架中使用,大多数传感器由
应用程序来使用。
第一部分传感器系统综述
传感器 JAVA 中的名称本地接口名称数值
加速度 ELEROMETER ELEROMETER 1
磁力域 IC_FIELD IC_FIELD 2
方向 TYPE_ORIENTATION SENSOR_TYPE_ORIENTATION 3
陀螺 TYPE_GYROSCOPE SENSOR_TYPE_GYROSCOPE 4
光线(亮度) TYPE_LIGHT SENSOR_TYPE_LIGHT 5
压力 TYPE_PRESSURE SENSOR_TYPE_PRESSURE 6
温度 TYPE_TEMPERATURE SENSOR_TYPE_TEMPERATURE 7
接近 TYPE_PROXIMITY SENSOR_TYPE_PROXIMITY 8
第一部分传感器系统综述
JAVA
Sensor Class
SensorListener SensorEventListener
SensorManager
Sensor SensorEvent
Java
Framework
Sensor JNI
()
Sensor Hardware Interface
Sensors
Hardware Module
Native
Framework
Kernel Space
Sensor Driver Sensor Driver
第一部分传感器系统综述
Sensor 系统的代码分布情况如下所示:
1 . Sensor 的 JAVA 部分
代码路径: frameworks/base/include/core/jave/android/hardware
主要的代码为 Sensor*.java
2 . Sensor 的 JNI 部分
代码路径: frameworks/base/core/jni

3 . Sensor 硬件层实现的接口
头文件路径: hardware/libhardware/include/hardware/
第二部分 Sensor 系统层次结构
Android 的传感器系统从驱动程序层次到上层
都有所涉及,传感器系统自下而上涉及到的各个层
次为:
各种 Sensor 的内核中的驱动程序
 Sensor 的硬件抽象层(硬件模块)
 Sensor 系统的 JNI
 Sensor 的 JAVA 类
 JAVA 框架中对 Sensor 的使用
 JAVA 应用程序对 Sensor 的使用
第二部分 Sensor 系统层次结构
Sensor 系统的 JNI 部分的函数列表:
static JNINativeMethod gMethods[] = {
{"nativeClassInit", "()V", (void*)nativeClassInit },
{"sensors_module_init","()I", (void*)sensors_module_init },
{"sensors_module_get_next_sensor", "(Landroid/hardware/Sensor;I)I",
(void*)sensors_module_get_next_sensor },
{"sensors_data_init", "()I", (void*)sensors_data_init },
{"sensors_data_uninit","()I", (void*)sensors_data_uninit },
{"sensors_data_open", "(Ljava/io/FileDescriptor;)I",
(void*)sensors_data_open },
{"se