android传感器的作用主要就是来获取数据,根据得到的数据来触发某种事件
下面就以重力传感器为例;
1,在onCreate中获得传感器服务
private SensorManager sm;// 获得系统的服务 private Sensor sensor;// 创建传感器实例 @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); // 获得传感器,//通过服务得到传感器管理对象 sm = (SensorManager) getSystemService(SENSOR_SERVICE); // 获得默认的传感器 sensor = sm.getDefaultSensor(Sensor.TYPE_ACCELEROMETER); // TYPE_ACCELEROMETER 加速度传感器(重力传感器)类型。 // TYPE_ALL 描述所有类型的传感器。 // TYPE_GYROSCOPE 陀螺仪传感器类型 // TYPE_LIGHT 光传感器类型 // TYPE_MAGNETIC_FIELD 恒定磁场传感器类型。 // TYPE_ORIENTATION 方向传感器类型。 // TYPE_PRESSURE 描述一个恒定的压力传感器类型 // TYPE_PROXIMITY 距离(临近性)传感器 // TYPE_TEMPERATURE 温度传感器类型描述 }
2,当界面显示的时候注册传感器
@Override protected void onResume() { super.onResume(); // 当界面显示时,注册注册传感器 // 第一个参数是传感器监听器,第二个是需要监听的传感实例 // 最后一个参数是监听的传感器速率类型: 一共一下四种形式 // SENSOR_DELAY_NORMAL 正常 // SENSOR_DELAY_UI 适合界面 // SENSOR_DELAY_GAME 适合游戏 // SENSOR_DELAY_FASTEST 最快 sm.registerListener(this, sensor, SensorManager.SENSOR_DELAY_NORMAL); }
3,当界面消失的时候关闭传感器
@Override protected void onStop() { // TODO Auto-generated method stub super.onStop(); // 关闭传感器 sm.unregisterListener(this); }
4,监听传感器的数据改变 implements SensorEventListener{}
@Override // 传感器获取值发生改变时获取值 public void onSensorChanged(SensorEvent event) { float x, y; // TODO Auto-generated method stub // 获取手机的坐标值 x = event.values[0];// x轴 y = event.values[1];// y轴 //z = event.values[2];// z轴 // Log.i("event", "onSensorChanged:" + event + "<><>x :<> " + x // + "<><>y:<>" + y); // 判断传感器的方向 if (x < -2 && x > -10) { System.out.println("向上"); } else if (x > 2 && x < 10) { System.out.println("向下"); } else if (y < -2 && y > -10) { System.out.println("向左"); } else if (y > 2 && y < 10) { System.out.println("向右"); } } @Override // 传感器的精度发生改变时响应此函数 public void onAccuracyChanged(Sensor sensor, int accuracy) { // TODO Auto-generated method stub // Log.i("event", "onAccuracyChanged:" + sensor + "<><><><>" + // accuracy); }
其他传感器的使用方式和上述的相似 ,只是获取的传感器不同,监听器中的event.values[0];代表的值不同
相关推荐
本文将深入探讨"EI_传感器布置_传感器_传感器优化_布置_有效独立"这一主题,分析如何通过有效独立法来优化传感器的布置。 首先,我们要理解传感器布置的重要性。在各种应用场景中,如工业生产、环境监控、自动驾驶...
光电传感器和激光传感器的区别 光电传感器和激光传感器都是常用的传感器,但是它们之间有很大的区别。了解它们的区别对于选择合适的传感器非常重要。 一、工作原理 光电传感器的工作原理是将光强度的变化转换成电...
标题中的“雨滴传感器模块资料_raindrop传感器_STM32F103_雨滴传感器”揭示了本文档的核心内容,主要涉及雨滴传感器的使用以及与STM32F103微控制器的集成。STM32F103是意法半导体(STMicroelectronics)生产的一款高...
《传感器工程》是一本深入探讨传感器技术及其在实际应用中的书。传感器,作为现代科技的基石,广泛应用于各个领域,从工业自动化到日常生活中的智能设备,无处不在。这本书全面覆盖了传感器的基本原理、类型、设计与...
磁电式传感器是利用电磁感应原理,将输入运动速度变换成感应电势输出的传感器。它能把被测对象的机械能转换成易于测量的电信号,是一种无源传感器。磁电式传感器有时也称作电动式或感应式传感器, 它只适合进行动态...
【标签】"传感器汇总ppt"表明这个资料集重点关注的是传感器的全面性总结,可能包含多种类型和功能的传感器,例如温度传感器、压力传感器、光学传感器、运动传感器等,这些传感器在各自的领域都有着重要的作用。...
本书综述传感器技术的基本理论,详细介绍各类传感器的工作原理,误差来源与应用场合,择要阐述主要传感器类型的设计原则与方法。全书共16章,可分三个部分:第一部分为共性部分,以新颖的构思与笔法介绍了传感器的...
医用传感器的教材编写是为了培养生物医学工程领域的高级技术人才,因此教材中不但介绍了传感器的基本概念和组成,还深入探讨了传感器的静态和动态特性、误码以及各种传感器类型,包括电阻式传感器、电容式传感器、...
传感器与检测技术全套教案 本教案旨在帮助学生理解传感器的概念、组成、分类和发展趋势,以便他们在学习和应用传感器技术时具备基本知识和技能。 一、传感器概念 传感器是一种能够将外界非电信号转换成电信号输出...
霍尔传感器是一种利用霍尔效应制作的磁场传感器,它的基本原理是当一个导体或半导体材料置于垂直于其平面的磁场中,并且有电流通过时,材料两侧会产生电势差,这一现象称为霍尔效应。霍尔传感器因其高精度和良好的...
1. 按照被测量类型:温度传感器、压力传感器、速度传感器、位移传感器、光敏传感器、声敏传感器等。 2. 按照工作原理:电阻式传感器、电容式传感器、电感式传感器、磁电式传感器、压电式传感器、光电式传感器等。 3....
火焰传感器是一种用于检测环境中是否存在火焰或火源的装置,它在许多领域,如消防安全、工业自动化、智能家居等,都有广泛的应用。本主题将深入探讨火焰传感器的工作原理、常见类型、程序设计及其在实际中的应用。 ...
STM32F407驱动灰度传感器源码资源是一个用于驱动灰度传感器的软件包,针对STM32F407系列微控制器。该资源提供了一套完整的驱动代码,用于读取和处理连接到STM32F407微控制器的灰度传感器的数据。 该资源包含以下...
《传感器应用设计141例》是一本深入探讨传感器在实际应用中的专业书籍,它涵盖了广泛而详实的传感器设计实例,旨在帮助读者理解和掌握传感器技术的精髓。书中的每一个案例都代表了一种独特的应用场景,从基础理论到...
在日常使用中,打印机的传感器可能会因为纸张、灰尘或其他因素导致误报,影响正常工作。这时,就需要对传感器进行重置以恢复其功能。本文将详细介绍爱普生690K打印机的传感器重置过程,并提供相关的知识点。 首先,...
在本文中,我们将深入探讨如何使用C语言来实现压力传感器的编程。51单片机是一种广泛应用的微控制器,常用于各种嵌入式系统,包括传感器数据采集。在这个项目中,我们将关注如何通过C语言与压力传感器进行通信,并...
开环式霍尔电流传感器和闭环式霍尔电流传感器主要有以下区别: 1.带宽区别 微观上讲,气隙处的磁场始终在零磁通附近变化,由于磁场变化幅度非常小,变化幅度小,变化的频率可以更快,因此,闭环...
《传感器原理及应用 答案》是一份涵盖了传感器基础知识及其在实际应用中的解题指导。传感器作为现代科技的重要组成部分,广泛应用于各个领域,如工业自动化、环境监测、汽车电子、医疗设备等。这份资料旨在帮助学习...
火焰传感器模块是一种用于检测环境中火焰或热源的电子设备,广泛应用于火灾预警系统、工业自动化、智能家居安全等领域。本资料包含火焰传感器的工作原理、电路设计、接口应用以及测试程序,旨在帮助用户更好地理解和...