在实际的应用开发中,会用到传感器,下面首先介绍一下iphone4的传感器,然后对一些传感器的开发的API作一简单介绍。

AD:WOT2015 互联网运维与开发者大会 热销抢票

在实际的应用开发中,会用到传感器,下面首先介绍一下iphone4的传感器,然后对一些传感器的开发的API作一简单介绍

一、 iPhone 4的传感器技术

进入正题,iPhone 4到底用上了哪些传感器呢?

1) 影像传感器

简单说就是相机镜头,由于只牵涉到微光学与微电子,没有机械成份在里头,即便加入马达、机械驱动的镜头,这类的机械零件也过大,不到「微」的地步,所以此属于光电半导体,属于光学、光电传感器。

2) 亮度传感器

外界并不清楚iPhone 4用何种方式感应环境光亮度,而最简单的实现方式是用一个光敏电阻,或者,iPhone 4直接用影像传感器充当亮度侦测,也是可行。无论如此,此亦不带机械成份,属于光电类传感器,甚至可能不是微型的,只是一般光学、光电传感器。

3) 磁阻传感器

简单讲就是感测地磁,这样讲还是太学名,感应地磁就是指南针原理,将这种地磁感应电子化、数字化,就称为数字指南针(Digital Compass)。老实说,数字指南针技术比较偏玩具性,因为用来感测地磁的磁阻传感器,很容易受环境影响(如高压电塔旁、马达旁),必须时时校正才有 用。

磁阻传感器目前没有被视为热门的MEMS组件,有些MEMS组件会追加整合磁阻感测能力(如ADI的产品,且目标应用是鱼雷用途),但一般而言磁阻传感器尚无迫切微型化的迹象。

4) 近接传感器

近接传感器的实现技术非常多种,可以是红外线(例如便利商店的自动门、男生公共厕所的自动冲水器)、可以是超音波、雷射等,太多太多。同样的,Apple没讲,我们只能乱猜或尽可能网搜,不过,近接传感器也没有迫切微型化的需要,不在热门MEMS组件之列。

5) 声波传感器

学名声波传感器,俗名麦克风。是的,iPhone 4 为了强化声音质量,使用2组麦克风与相关运算来达到降噪(降低噪音)的效果,这种技术称为数组麦克风(Array MIC),事实上早在Apple实行之前,2004年Wintel就已经在PC上提出过,差别是Apple用于手机,Wintel用于PC。

麦克风需要微型化吗?是的,需要,相当需要,且使用一个以上的麦克风,麦克风的体积缩小需求就更迫切,麦克风也牵涉到机械(声波会使微型机械振动),并将机械振动转换成电子信号,因此微型化的麦克风,是个不折不扣的MEMS传感器。

6) 加速度传感器

俗称加速规、G-Sensor,可以感应物体的加速度性。事实上加速度传感器的实现方式也是许多种,MEMS只是手法之一,用MEMS实现加速度传感器确实是目前的趋势。

加速度传感器一般有「X、Y两轴」与「X、Y、Z三轴」两种,两轴多用于车、船等平面移动为多,三轴多用于飞弹、飞机等飞行物。而不用多说,Wii遥控器也是用三轴,iPhone可以感应实体翻转而自动对应翻转画面,也是靠这个传感器。

7) 角加速度传感器

更简单讲就是陀螺仪,陀螺仪实现技术有机械式与光学(红外线、雷射)式,第六项的加速度传感器比较能感测平移性,但对于物体有个轴心,进行角度性的移动, 则其感应效果不如陀螺仪好,所以许多应用多半是混何使用加速度传感器与陀螺仪,而今iPhone 4也从善如流。不过,iPhone 4确实是率先使用陀螺仪的手机。

二、常用使用方法

在我们应用中应用最多有加速度传感器,角度加速度伟感器,这两个主要应用在需要重力感应的应用中,在公开的API中UIAccelerometer类实现相应的功能;磁阻传感器主要应用于需要指示方向的应用中,在公开的API中CLLocationManager类实现相应的功能,上述几个使用方法今天不作介绍;而影像传感器和亮度传感器的使用方法,是否有公开的API,限于本人的学术水平,还未查到使用方法;今天主要介绍近接传感器的用法,代码如下:

  1. [[UIDevice currentDevice] setProximityMonitoringEnabled:YES];
  2. [[NSNotificationCenter defaultCenter] addObserver:self
  3. selector:@selector(sensorStateChange:)
  4. name:@"UIDeviceProximityStateDidChangeNotification"
  5. object:nil];
  6. -(void)sensorStateChange:(NSNotificationCenter *)notification;
  7. {
  8. if ([[UIDevice currentDevice] proximityState] == YES) {
  9. NSLog(@"Device is close to user");
  10. //在此写接近时,要做的操作逻辑代码
  11. }else{
  12. NSLog(@"Device is not close to user");
  13. }
  14. }

转载于:https://www.cnblogs.com/tandaxia/p/4245298.html

iOS开发之──传感器使用 (转载)相关推荐

  1. IOS开发之──传感器使用

    在实际的应用开发中,会用到传感器,下面首先介绍一下iphone4的传感器,然后对一些传感器的开发的API作一简单介绍 一. iPhone 4的传感器技术 进入正题,iPhone 4到底用上了哪些传感器 ...

  2. 每天一个编程题·iOS开发算法提升计划(1)

    点击上方"iOS开发",选择"置顶公众号" 关键时刻,第一时间送达! 先不说楚枫的这般年纪,能够踏入元武一重说明了什么,最主要的是,楚枫在刚刚踏入核心地带时,明 ...

  3. iOS开发·runtime原理与实践: 基本知识篇

    点击上方"iOS开发",选择"置顶公众号" 关键时刻,第一时间送达! 摘要:这篇文章首先介绍runtime原理,包括类,超类,元类,super_class,is ...

  4. iOS开发——仿微信图片浏览交互的实现(向下拖拽图片退出图片浏览器)

    点击上方"iOS开发",选择"置顶公众号" 关键时刻,第一时间送达! DEMO的github地址:https://github.com/YYProgrammer ...

  5. 33 款主宰 2017 iOS 开发的开源库

    按需排列 33 个库,提升你在 2017 年的开发.开始燃烧吧. 你好,iOS 开发者们!我的名字是 Pawel,是一名 iOS 独立开发者,也是  Enter Universe 的作者. 大概在两年 ...

  6. [转载]iOS开发常用国外网站清单

    [转载]iOS开发常用国外网站清单 iOS网站 原文地址:iOS开发常用国外网站清单作者:eseedo 工欲善其事必先利其器,最近发现临时查找一些东西容易浪费时间,花了点时间整理一下常用的网站,方便以 ...

  7. iOS开发中遇到的一些问题及解决方案【转载】

    iOS开发中遇到的一些问题及解决方案[转载] 2015-12-29 [385][scrollView不接受点击事件,是因为事件传递失败] // //  MyScrollView.m //  Creat ...

  8. 转载大神IOS开发系列【9】--触摸事件、手势识别、摇晃事件、耳机线控

    转载自:http://www.cnblogs.com/kenshincui/p/3950646.html 概览 iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以 ...

  9. 转载大神IOS开发系列【16】--通讯录、蓝牙、内购、GameCenter、iCloud、Passbook

    转载自:http://www.cnblogs.com/kenshincui/p/4220402.html --系统应用与系统服务 iOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如Q ...

最新文章

  1. C语言基础:C语言宏定义(4) - 多文件编译
  2. C#中只使用Invokerequired来判断是不是UI线程可靠吗?
  3. [linux]tcpdump抓包
  4. VUE router-view 页面布局 (嵌套路由+命名视图)
  5. java字段映射替换框架一对多_java之mybatis之字段映射及多对一
  6. python下载pandas库镜像_下载pandas库
  7. 苹果Mac突然没有声音,3 种方法快速检测
  8. android read_phone_state 代码,android - 用户10102和当前进程都没有android.permission.READ_PHONE_STATE - 堆栈内存溢出...
  9. 【Multisim仿真】NE555组成的振荡器电路(占空比可调)
  10. hub设备_【小O新品】办公设备的小助手,ORICO奥睿科HUB集线器新品来袭
  11. Vue实现图形化积木式编程(十二)
  12. latex多行公式加大括号、整体编号及多行编号及不同方法的区别
  13. 华为P30 后摄像头打不开(C1904失效)维修案例
  14. excel切片器_Excel切片器,让图表动起来
  15. SQL基础培训13-索引和优化
  16. css实现文字大小自适应
  17. STM32_光敏、温湿度传感的选择?
  18. 种植福田{培植福报}~福慧双修——悟透自己!
  19. ant在linux下的配置
  20. MATLAB图像处理——图像中余弦噪声去除(附代码)

热门文章

  1. 最通俗易懂的命名实体识别NER模型中的CRF层介绍
  2. python下载numpy库_安装numpy库
  3. java的位桶是什么_Java关于桶排序的知识点总结
  4. python访问字符串中的部分字符的操作_python中字符串的常见操作方法
  5. laravel本地项目上传服务器,laravel 上传本地文件到服务器
  6. 林期苏曼属性标签编辑_标签打印软件如何打印指定日期
  7. Linux 网络抓包
  8. LTE学习:MCS(调制与编码策略) CSI(信道状态信息)
  9. idea debug的时候 启动起来超级慢
  10. Apache 分割日志