android 气压传感器_Android传感器教程:气压计传感器
android 气压传感器
我认为最有趣的主题之一是如何在Android中使用Sensor 。 如今,我们的智能手机充满了传感器,我们可以用它来控制我们的应用程序。 最常见的传感器是:
- 全球定位系统
- 接近传感器
- 光传感器
- 温度感应器
- 气压计传感器
- NFC
仅提及其中一些。 在这篇文章中,我们将解释如何获取传感器列表以及如何使用其中一个传感器 (即Barometer sensor )。 我们想要创建一个显示当前压力的应用程序:
在Android中使用传感器
当我们开发一个android应用程序时,我们需要一个特定的传感器,以便我们的应用程序可以运行,我们有两种不同的选择:
- 在AndroidManifest.xml中将其指定为传感器
- 检测传感器列表并检查我们感兴趣的传感器列表是否可用
如果我们在AndroidManifest.xml中指定它,则只需添加以下行:
选择“ 用户功能”后 ,我们将:
我们也可以检索传感器列表,我们需要一些代码。
@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);// Get the reference to the sensor managersensorManager = (SensorManager) getSystemService(Service.SENSOR_SERVICE);// Get the list of sensor List<Sensor> sensorList = sensorManager.getSensorList(Sensor.TYPE_ALL);List<Map<String, String>> sensorData = new ArrayList<Map<String,String>>();for (Sensor sensor: sensorList) {Map<String, String> data = new HashMap<String, String>();data.put("name", sensor.getName());data.put("vendor", sensor.getVendor());sensorData.add(data);}
}
在第7行,我们获得用于处理传感器的SensorManager的引用,然后在第10行,我们获得传感器列表。 在这种情况下,我们希望智能手机中包含所有传感器,因此我们使用Sensor.TYPE_ALL。 如果只想一次,我们可以过滤列表,使其通过我们要寻找的传感器类型。 例如,如果我们要拥有所有的气压计传感器,则可以使用:
List<Sensor> sensorList = sensorManager.getSensorList(Sensor.TYPE_PRESSURE);
有了列表后,我们可以简单地使用ListView和SimpleAdapter来显示它。 结果(在我的智能手机中)是
现在做什么? 我们可以从Sensor类中获取一些信息,例如供应商传感器分辨率,最小和最大范围。 您必须谨记,不同传感器之间的传感器范围会有所不同。 获得列表后,我们可以检查智能手机是否支持我们的传感器。 现在我们有了传感器,我们希望从传感器获取信息。
传感器事件
要从传感器获取信息,有一个简单的方法:注册一个侦听器。 首先,我们必须选择我们感兴趣的传感器,然后注册我们的侦听器。 在我们的案例中,我们对气压计传感器很感兴趣,因此我们有:
// Look for barometer sensor
SensorManager snsMgr = (SensorManager) getSystemService(Service.SENSOR_SERVICE);
Sensor pS = snsMgr.getDefaultSensor(Sensor.TYPE_PRESSURE);
snsMgr.registerListener(this, pS, SensorManager.SENSOR_DELAY_UI);
在第4行,我们注册了侦听器。 请注意,最后一个参数表示当传感器测量的值更改时,我们希望多快收到通知。 有多个值,但请注意,通知速度过快可能会对您的应用产生一些副作用。 要将一个类注册为侦听器,我们只需实现一个接口SensorEventListener例如:
public class PressActivity extends Activity implements SensorEventListener {@Overridepublic void onAccuracyChanged(Sensor sensor, int accuracy) {}@Overridepublic void onSensorChanged(SensorEvent event) {float[] values = event.values;pressView.setText("" + values[0]);}
}
在第3行中,我们重写了精度更改时调用的方法。 此参数表示我们从传感器获得的值的置信度。 另一个方法(更有趣)是onSensorChanged,当值更改时将调用它。 在这种情况下,我们只需获取第一个值e即可在TextVIew中显示它。 结果如下所示:
例如,典型的应用程序可以显示压力趋势,以了解太阳是否会避开或我们是否会出现云。
源代码即将发布。
翻译自: https://www.javacodegeeks.com/2013/09/android-sensor-tutorial-barometer-sensor.html
android 气压传感器
android 气压传感器_Android传感器教程:气压计传感器相关推荐
- android 语音识别_Android语音识别教程
android 语音识别 您可能听说过" Google Now项目" ,在这里您可以发出语音命令,Android会为您获取结果. 它可以识别您的声音并将其转换为文本或采取适当的措施 ...
- Android传感器教程:气压计传感器
我认为最有趣的主题之一是如何在Android中使用Sensor . 如今,我们的智能手机充满了传感器,我们可以用它来控制我们的应用程序. 最常见的传感器是: 全球定位系统 接近传感器 光传感器 温度感 ...
- Android传感器应用——重力传感器实现滚动的弹球
一. 问题描述 Android中有多达11种传感器,不同的手机设备支持的传感器类型也不尽相同 1. 重力传感器 GV-sensor 2. 加速度传感器 G-sensor 3. 磁力传感器 M-se ...
- android开发笔记之高级主题—传感器的简单介绍
今天我们开始进入讲解android中的一些高级主题的用法,比如传感器.GPS.NFC.语音和人脸识别等. 这次来对传感器的一个简单介绍: Android平台支持三大类的传感器: 位移传感器 这些传感器 ...
- Android 传感器 II-运动传感器
概述: Android平台提供了一些传感器让我们可以监测设备的运动情况. 其中的两种总是基于硬件的(加速度计和陀螺仪), 其中的三个是能软能硬的(重力计, 线性加速计和旋转矢量传感器). 比如, 在一 ...
- ESP32教程——霍尔效应传感器
ESP32 开发板具有一些内置传感器,如电容式触摸传感器和霍尔效应传感器.在本教程中,我们将讨论霍尔效应传感器中的一个内置传感器. 霍尔效应传感器用于检测其周围磁场的变化. 霍尔传感器 霍尔传感器与阈 ...
- Android - 小功能 - 传感器之重力传感器
一:什么是传感器: 所谓传感器能够探测如光.热.温度.重力.方向 等等的功能! 二:Android中提供传感器有哪些: 1. 加速度传感器(重力传感器) 2. ...
- Android app如何使用 有效运动传感器
背景 今天有对设备的运动 跌落的检测 这里简单的了解了系统的传感器接口 有如下几个接口 对大家进行推荐 Android 平台提供多种传感器,可让您监视设备的运动. 传感器的可能架构因传感器类型而异: ...
- bmp180气压传感器工作原理_各种传感器工作原理汇总
压阻式传感器测量液位的工作原理 ▼ MQN型气敏电阻结构及测量电路 ▼ 气泡式水平仪的工作原理 ▼ 扩散硅式压力传感器 ▼ 应变加速度感应器 ▼ 称重式料位计 ▼ 电子皮带秤重示意图 ▼ 电子吊车秤 ...
最新文章
- 企业Shell实战-MySQL分库分表备份脚本
- 怀旧服湖畔镇服务器位置,《魔兽世界怀旧服》今天再开10组新服 47组服务器免费转服开启...
- wxWidgets:wxCalculateLayoutEvent类用法
- mysql快速上手3
- 前端学习(2674):vue3修改
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 23丨向CEO汇报工作的人【难度中等】​
- celery-04-操作b-执行人的一方
- this(C# 参考)
- 搜索引擎的那些事(32位MD5算法)
- python语言入门-Python语言十分钟快速入门
- html推箱子过关检测函数,HTML5推箱子实现
- 微机综合保护装置怎么选择?在高压柜中起什么作用?
- 省市区联动附(2020年省市区数据)
- 在香港用什么软件可以唱歌?香港K歌app推荐
- mdpi Algorithms 期刊word 模板下载
- SAP License:ERP系统操作详解
- vant中的swipe
- Java编程笔记16:深入容器
- 南理工计算机科学与工程学院,周俊龙 - 南京理工大学 - 计算机科学与工程学院...
- [转]最速下降曲线:重力场中两点之间曲线更快
热门文章
- 【科研数据处理建模】SPSS实战操作生成36类常用论文研究案例,供学习参考
- (SQL版)天堂二私服架設
- 【手机】欧陆词典安装词典包
- 手机型号大全资料_建筑工程图纸代号大全,从此识图无压力!
- 实训二十三:交换机扩展 ACL 配置
- htc自带的位置服务器,htc手机自带的云服务器
- 【巨杉数据库SequoiaDB】企业级和开源领域“两开花”,巨杉引领国产数据库创新
- 管理系统中计算机应用实践报告,管理系统中的计算机应用实践报告.docx
- 基于FPGA的扩频系统设计(上)
- 信用卡知识:自动扣款日不等于最后还款日_刷卡技巧_财经_腾讯网