【android:位置传感器——使用近程传感器】
android:位置传感器——使用近程传感器
近程传感器可让您确定物体与设备的距离。以下代码展示如何获取默认近程传感器的实例:
private SensorManager sensorManager;
private Sensor sensor;
...
//获取传感器
sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
sensor = sensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);
近程传感器通常用于确定人的头部距手持设备表面的距离(例如,当用户拨打或接听电话时)。大多数近程传感器返回以厘米为单位的绝对距离,但有些仅返回近距离和远距离值。以下代码展示如何使用近程传感器:
public class SensorActivity extends Activity implements SensorEventListener {// 创建监听器SensorEventListenerprivate SensorManager sensorManager;private Sensor proximity;@Overridepublic final void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);// 获取传感器服务的一个实例,并使用该实例获取传感器服务的一个实例// 获取传感器。sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);proximity = sensorManager.getDefaultSensor(Sensor.TYPE_PROXIMITY);}@Overridepublic final void onAccuracyChanged(Sensor sensor, int accuracy) {//如果传感器精度发生变化,请在此处采取措施。}@Overridepublic final void onSensorChanged(SensorEvent event) {float distance = event.values[0];// 用这些传感器数据做点什么。}@Overrideprotected void onResume() {// 为传感器注册一个侦听器。super.onResume();sensorManager.registerListener(this, proximity, SensorManager.SENSOR_DELAY_NORMAL);}@Overrideprotected void onPause() {// 活动暂停时,请务必注销传感器。super.onPause();sensorManager.unregisterListener(this);}
}
注意:某些传感器返回二进制值来表示“近”或“远”。在这种情况下,传感器通常会在远距离状态下报告其最大范围值,而在近距离状态下报告较小的值。通常,远距离值是一个大于 5 cm 的值,但这可能因传感器而异。您可以使用 getMaximumRange() 方法确定传感器的最大范围。
【android:位置传感器——使用近程传感器】相关推荐
- android 传感器 应用,Android移动设备中传感器的应用
摘要:本文介绍了Android平台应用的传感器技术的基础知识. 在移动技术中,传感器是被测量信号输入的首要技术,也是传感器系统中的元件组成部分,它包括载体和电路连接的敏感元件和转换元件,但是传感器系统 ...
- Android Proximity Sensor近距离传感器P-Sensor
好文章: Android 4.4中的距离/接近传感器 P-sensor(一) https://blog.csdn.net/kongjianjian1988/article/details/435248 ...
- Android传感器之陀螺仪传感器
代码片段,双击复制 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ...
- Android Manager之SensorManager(传感器)—方向传感器(Orientation sensor)
本章节讲述方向传感器(Orientation sensor)的相关使用. 如果您还不了解传感器的相关知识,请点击:Android Manager之SensorManager(传感器)-基础知识 1.方 ...
- Android 传感器之方向传感器
一般情况下,在android系统中获取手机的方位信息在api中有TYPE_ORIENTATION常量,可以像得到加速度传感器那样得到方向传感器sm.getDefaultSensor(Sensor.TY ...
- android重力传感器横竖反,Android编程基于重力传感器实现横竖屏放向切换功能
本文实例讲述了Android编程基于重力传感器实现横竖屏放向切换功能.分享给大家供大家参考,具体如下: 最近项目中用到了vr视频播放,因为自己实现,同时要实现横竖屏自动切换屏幕,核心代码如下: pac ...
- Android操作系统11种传感器
Android操作系统11种传感器介绍 在Android2.3 gingerbread系统中,google提供了11种传感器供应用层使用. #define SENSOR_TYPE_ACCEL ...
- [转帖]Android操作系统11种传感器介绍
Android操作系统11种传感器介绍 在Android2.3 gingerbread系统中,google提供了11种传感器供应用层使用. #define SENSOR_TYPE_ACCELEROME ...
- MTK Android操作系统11种传感器介绍
Android操作系统11种传感器介绍 1 加速度传感器 2 磁力传感器 3 方向传感器 4 陀螺仪传感器 5 光线感应传感器 6 压力传感器 7 温度传感器 8 接近传感器 9 重力传感器 10 线 ...
最新文章
- 游戏伤害计算机,电脑游戏的危害(The harm of PC games)
- golang 文件操作 创建 读写 复制移动 权限 删除
- 我的文档名字跟计算机名不一样,win10系统如何更改我的文档名称
- ArcGIS 10.7 模型构建器Model Builder空间建模流程化作业案例----影像拼接与掩膜裁剪
- day 05 多行输出与多行注释、字符串的格式化输出、预设创建者和日期
- MySQL(18)--- UNION 操作符
- Facebook广告兴趣定位终极指南经验分享
- junit框架——单元测试
- html 导航栏跟着动_“跟着导航来,现在不敢动!”浙江深山男游客吓坏,4岁儿子冻得直跺脚...
- 阿里云服务器ECS数据盘的自动挂载解决方案
- TabControl 切换 内嵌web页面直接响应滚动事件
- 人大金仓数据库的备份与还原 KingbaseES V8R6
- 卖出平仓是什么意思​?
- Openstack(T版)概述和环境部署
- php单元测试入门教程phpunit详解
- python入门教学反思_Python语言教学反思
- LeetCode 31-40题
- Swift学习笔记(4)使用UIImagePickerController实现从设备图片库和照相机获取图片
- fft理解-cooley turkey
- JS - Jquery 利用cookie 实现本地收藏功能,不重复无需多次命名