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:位置传感器——使用近程传感器】相关推荐

  1. android 传感器 应用,Android移动设备中传感器的应用

    摘要:本文介绍了Android平台应用的传感器技术的基础知识. 在移动技术中,传感器是被测量信号输入的首要技术,也是传感器系统中的元件组成部分,它包括载体和电路连接的敏感元件和转换元件,但是传感器系统 ...

  2. Android Proximity Sensor近距离传感器P-Sensor

    好文章: Android 4.4中的距离/接近传感器 P-sensor(一) https://blog.csdn.net/kongjianjian1988/article/details/435248 ...

  3. 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 ...

  4. Android Manager之SensorManager(传感器)—方向传感器(Orientation sensor)

    本章节讲述方向传感器(Orientation sensor)的相关使用. 如果您还不了解传感器的相关知识,请点击:Android Manager之SensorManager(传感器)-基础知识 1.方 ...

  5. Android 传感器之方向传感器

    一般情况下,在android系统中获取手机的方位信息在api中有TYPE_ORIENTATION常量,可以像得到加速度传感器那样得到方向传感器sm.getDefaultSensor(Sensor.TY ...

  6. android重力传感器横竖反,Android编程基于重力传感器实现横竖屏放向切换功能

    本文实例讲述了Android编程基于重力传感器实现横竖屏放向切换功能.分享给大家供大家参考,具体如下: 最近项目中用到了vr视频播放,因为自己实现,同时要实现横竖屏自动切换屏幕,核心代码如下: pac ...

  7. Android操作系统11种传感器

    Android操作系统11种传感器介绍 在Android2.3 gingerbread系统中,google提供了11种传感器供应用层使用.      #define SENSOR_TYPE_ACCEL ...

  8. [转帖]Android操作系统11种传感器介绍

    Android操作系统11种传感器介绍 在Android2.3 gingerbread系统中,google提供了11种传感器供应用层使用. #define SENSOR_TYPE_ACCELEROME ...

  9. MTK Android操作系统11种传感器介绍

    Android操作系统11种传感器介绍 1 加速度传感器 2 磁力传感器 3 方向传感器 4 陀螺仪传感器 5 光线感应传感器 6 压力传感器 7 温度传感器 8 接近传感器 9 重力传感器 10 线 ...

最新文章

  1. 游戏伤害计算机,电脑游戏的危害(The harm of PC games)
  2. golang 文件操作 创建 读写 复制移动 权限 删除
  3. 我的文档名字跟计算机名不一样,win10系统如何更改我的文档名称
  4. ArcGIS 10.7 模型构建器Model Builder空间建模流程化作业案例----影像拼接与掩膜裁剪
  5. day 05 多行输出与多行注释、字符串的格式化输出、预设创建者和日期
  6. MySQL(18)--- UNION 操作符
  7. Facebook广告兴趣定位终极指南经验分享
  8. junit框架——单元测试
  9. html 导航栏跟着动_“跟着导航来,现在不敢动!”浙江深山男游客吓坏,4岁儿子冻得直跺脚...
  10. 阿里云服务器ECS数据盘的自动挂载解决方案
  11. TabControl 切换 内嵌web页面直接响应滚动事件
  12. 人大金仓数据库的备份与还原 KingbaseES V8R6
  13. 卖出平仓是什么意思​?
  14. Openstack(T版)概述和环境部署
  15. php单元测试入门教程phpunit详解
  16. python入门教学反思_Python语言教学反思
  17. LeetCode 31-40题
  18. Swift学习笔记(4)使用UIImagePickerController实现从设备图片库和照相机获取图片
  19. fft理解-cooley turkey
  20. JS - Jquery 利用cookie 实现本地收藏功能,不重复无需多次命名

热门文章

  1. 【渝粤题库】陕西师范大学203031 英语写作(二)》(高起专)作业
  2. 解析json文本并使用handler完成三个控件文本内容的切换
  3. mac电脑怎样修改cad标注尺寸中的数字大小?
  4. UI设计中的12个基本动效
  5. 蚂蚁金服战略入股润和软件,竟然是为了它?
  6. 【钉钉-场景化能力包】企业员工积分排名
  7. 魔兽世界WOW私服架设详细教程
  8. react16 兼容ie9
  9. Ubuntu16.04安装软件提示E: Encountered a section with no Package: header错误
  10. javascript 双击单机 解决办法