《Android应用程序开发》课件-第5章_第1页
《Android应用程序开发》课件-第5章_第2页
《Android应用程序开发》课件-第5章_第3页
《Android应用程序开发》课件-第5章_第4页
《Android应用程序开发》课件-第5章_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第5章传感器5.1传感器5.2综合案例5.3实训本章小结

5.1传感器

任务目标测量当前位置的重力加速度,如图5-1-1所示。图5-1-1测量重力加速度

实施步骤

步骤1:新建一个Module,命名为Ex5_1_1。布局文件仅有一个TextView,比较简单,清单略。

步骤2:修改MainActivity.java。

案例分析

booleanregisterListener(SensorEventListenerlistener,Sensorsensor,intrateUs)

其中,参数listener为传感器的监听器;参数sensor为待监听的传感器;参数rateUs为传感器的采样率,表示从传感器获取值的频率。rateUs被定义在SensorManager中,为了方便直接使用,它定义了如下选项:

相关知识

1. SensorManager类

下面介绍SensorManager类的主要方法。

(1) SensorgetDefaultSensor(inttype):获得给定类型的默认传感器。参数type表示所请求的传感器类型。

(2) List<Sensor>getSensorList(inttype):得到指定类型可用的传感器列表。

(3) booleanregisterListener(SensorEventListenerlistener,Sensorsensor,intrate):对某个给定的传感器注册传感事件监听器。

(4) booleanregisterListener(SensorEventListenerlistener,Sensorsensor,intrate,Handlerhandler):对某个给定的传感器注册传感事件监听器。

(5) voidunregisterListener(SensorEventListenerlistener,Sensorsensor):取消传感器监听器的注册。

(6) voidunregisterListener(SensorEventListenerlistener):取消所有与该监听器有关的传感器的监听。

2. Sensor类

Sensor类中含有大量与传感器属性相关的方法和属性,这里仅列出有代表性的几个。

(1) intTYPE_LIGHT:表示光线传感器。

(2) intTYPE_LINEAR_ACCELERATION:表示线性加速器。

(3) intTYPE_GRAVITY:表示重力传感器。

(4) floatgetMaximumRange():获取最大取值范围。

(5) StringgetName():获取设备名称。

(6) intgetType():获取传感器类型。

3. SensorEventListener接口

实现SensorEventListener接口,必须采用如下两个方法:

1) publicvoidonSensorChanged(SensorEventevent)方法

2) onAccuracyChanged(Sensorsensor,intaccuracy)方法

4.传感器应用步骤

具体步骤如下:

(1)获取传感器服务。

(2)从传感器服务中获取指定类型的传感器。

(3)使用传感器服务添加传感器的监听器(通常在Activity的onResume中),此时Activity置顶可见。

(4)在使用完之后,注销传感器的监听器(通常在Activity生命周期的onStop或者onDestory中)。

任务目标

根据光线传感器改变手机背景颜色。当光线比较暗的时候,背景色变深。

实施步骤

步骤1:新建一个Module,命名为Ex5_1_2。

步骤2:修改布局文件。

步骤3:修改MainActivity类。

步骤4:在手机上运行并观察效果。

5.2综合案例

任务目标编写一个应用,打开该应用后,如果移动该手机,则使用Toast报警。

实施步骤

步骤1:创建Module,命名为Ex5_2_1。

步骤2:在布局文件上添加一个TextView,设置id为tvAlarm。清单略。

步骤3:修改MainActivity.java。

步骤4:在手机上测试运行并观察结果。

案例分析

本案例主要通过对手机移动时加速度传感器检测3个维度的加速度变化进行感应,无论手机怎么移动,至少有一个维度的加速度有明显改变,精度可以通过对阈值设置进行控制。需要注意的是如何保存初始值(即手机开始静止时的加速度值)。

5.3实训

实训目的掌握使用传感器的步骤。实训步骤(1)在布局界面添加显示控件。(2)注册使用加速度传感器(或其它传感器)。(3)在onSensorChanged中添加相

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论