《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx

上传人(卖家):momomo 文档编号:7647920 上传时间:2024-05-19 格式:PPTX 页数:15 大小:148.73KB
下载 相关 举报
《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx_第1页
第1页 / 共15页
《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx_第2页
第2页 / 共15页
《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx_第3页
第3页 / 共15页
《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx_第4页
第4页 / 共15页
《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、让IT教学更简单,让IT学习更有效Android程序设计教程第十一章 Android传感器应用开发目录 11.1 传感器简介 11.1.1 传感器的检测 11.1.2 使用传感器的步骤 11.2 光线传感器 11.3 加速度传感器 11.4 陀螺仪传感器 11.5 磁场传感器学习目标 掌握传感器使用的基本步骤 掌握光线传感器的使用 掌握加速度传感器的使用 掌握陀螺仪传感器的使用 掌握磁场传感器的使用11.1.1 传感器的检测 Android SDK中定义了十多种传感器,但是不是每个手机都完全支持这些传感器。如果遇到手机不支持的传感器,程序运行往往不会抛出异常,只是无法获得传感器传回的数据。那么

2、如何知道设备上有哪些传感器可用呢?有两种方式:一种是直接方式,一种是间接方式。直接方式 首先获取SensorManger对象,通过上下文对象的getSystemService(SENSOR_SERVICE)方法就可以获取到系统的传感器管理服务。然后调用SensorManger对象的getSensorList()方法获取传感器集合,遍历获取到的集合就能得到传感器信息。间接方式 在AndroidManifest.xml配置文件中,指定该应用程序只支持运行在具有哪些硬件功能的设备上。如果应用程序需要温度传感器,可以在配置文件中添加下面一行代码。11.1.2 使用传感器的步骤(1)调用Context的

3、getSystemService(Context.SENSOR_SERVICE)方法获取SensorManager对象。(2)调用SensorManager的getDefaultSensor(int type)方法获取指定类型的传感器。(3)在onCreate()生命周期方法中调用SensorManager的registerListener()方法为指定传感器注册监听。(4)实例化SensorEventListener接口,作为registerListener()方法的第一个参数。重写SensorEventListener接口中的onSensorChanged()方法。(5)在onDestro

4、y()生命周期方法中调用SensorManager的unregisterListener()方法释放资源。SensorManager的registerListener()方法的用法如下:public boolean registerListener(SensorEventListener listener,Sensor sensor,int rate)其中:listener:监听传感器事件的监听器,该监听器需要实现SensorEventListener接口。sensor:通过SensorManager的getDefaultSensor(int type)方法获取到的传感器对象。rate:获取传

5、感器数据的频率。该参数由SensorManager中的几个常量来定义。(1)int SENSOR_DELAY_FASTEST=0;以最快的速度获得传感器数据。只有特别依赖传感器数据的应用才推荐采用这种频率,这种模式会造成手机大量耗电。(2)int SENSOR_DELAY_GAME=1;适合游戏的频率,在一般实时性要求的应用上适用这种频率。(3)int SENSOR_DELAY_UI=2;适合普通用户界面的频率,这种模式比较省电,系统开销也小,但是延迟较长。(4)int SENSOR_DELAY_NORMAL=3;11.2 光线传感器 光线传感器的类型常量为Sensor.TYPE_LIGHT(

6、数值为5)。Values数组只有第一个元素values0有意义,表示光线的强度。Android SDK中将光线强度分为不同等级,每一个等级的最大值由一个常量表示,这些常量定义在SensorManager类中,最大值为120000.0f。11.3 加速度传感器 在Android系统中,加速度传感器的类型常量是Sensor.TYPE_ACCELEROMETER(数值为1),单位为m/s2,能够测量应用设备在x、y、z轴上的加速度,又叫作G-sensor。在开发过程中,通过Android的加速度传感器可以取得x、y、z三个轴的加速度,器值存放在values数组中。values数组的三个元素含义如下:

7、values0:沿X轴方向的加速度(手机水平放置,手机横向左右移动)。values1:沿Y轴方向的加速度(手机水平放置,手机前后移动)。values2:沿Z轴方向的加速度(手机竖向上下移动)。11.4 陀螺仪传感器 陀螺仪传感器是一个基于自由空间移动和手势的定位和控制系统,已经广泛运用于手机、平板电脑等移动便携设备上,在将来的设备也会陆续使用到。在Android系统中,陀螺仪传感器的类型是Sensor.TYPE_GYROSCOPE,单位是rad/s,能够测量设备X、Y、Z三轴的角加速度数据。Android中的陀螺仪传感器又名为Gyro-sensor角速度器,利用内部振动机械结构侦测物体转动所产生的角速度,进而计算出物体移动的角度。11.5 磁场传感器 在Android系统中,磁场传感器的类型常量为Sensor.TYPE_MAGNETIC_FIELD(数值为2),单位是uT(微特斯拉),能够测量设备周围3个物理轴(X、Y、Z)的磁场。在Android设备中,磁场传感器主要用于感应周围的磁感应强度,在注册监听器后主要用于捕获如下三个参数:values0:沿X轴方向的磁场分量。values1:沿Y轴方向的磁场分量。values2:沿Z轴方向的磁场分量。谢谢

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 大学
版权提示 | 免责声明

1,本文(《Android程序设计教程》课件第十一章 Android传感器应用开发.pptx)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|