搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
iOS传感器应用开发最佳实践
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787302351153
  • 作      者:
    关东升著
  • 出 版 社 :
    清华大学出版社
  • 出版日期:
    2014
收藏
编辑推荐

《iOS传感器应用开发最佳实践》是著名移动开发专家关东升倾力创作的iOS 7专业开发领衔之作,全面涵盖iOS 7传感器应用开发原理与项目实战的里程碑作品!《iOS传感器应用开发最佳实践》秉持“原创”与“分享”的IT人文精神,倾尽全力,将数年来的研发与培训经验毫无保留地呈现在本书中,全面深入剖析iOS 7最新的API,系统介绍了iOS主要的传感器应用开发的理论与实践:手势识别、加速度计、陀螺仪、指南针、磁力计、照相机、摄像头、音频设备访问、定位和蓝牙通信,以及iOS敏捷开发项目实战——增强现实版本铅锤应用等开发细节……不容错过。

展开
作者简介

关东升 国内知名iOS技术作家,iOS技术顾问,高级培训讲师,移动开发专家。担任51CTO社区iOS技术顾问,精通iOS、Android和Windows Phone及HTML5等移动开发技术。曾先后主持开发大型网络游戏《神农诀》的iOS和Android客户端开发,国家农产品追溯系统的iPad客户端开发,酒店预订系统的iOS客户端开发,金融系统的iOS、Windows Phone 及Android客户端开发。在App Store上发布数款游戏和应用软件,擅长移动平台的应用和游戏类项目开发。长期为中国移动研究院、云南移动、东软、方正科技、大唐电信、中石油、深圳康拓普、上海财富168、天津港务局等企事业单位授课。著有《iOS网络编程与云端应用最佳实践》、《交互设计的艺术——iOS 7拟物化到扁平化革命》等iOS专业图书。

展开
内容介绍

本书采用基于iOS 7最新的API,系统介绍了iOS设备主要的传感器应用开发的相关知识。本书共分为9章,分别从编程原理与开发实践两个角度论述了手势识别、加速度计、陀螺仪、指南针、磁力计、照相机、摄像头、音频设备访问、定位和蓝牙通信,以及iOS敏捷开发项目实战——增强现实版本铅锤应用等。
本书适合从事iOS开发,尤其是传感器应用开发的读者阅读使用。为便于读者快速动手实践,本书配套提供了所有实例的源代码。

展开
精彩书摘

第3章加速度计与陀螺仪
在新的iOS设备中都内置了加速度计与陀螺仪两个传感器,它们可以感知设备的运动,通过这些传感器可以开发出很多有趣的应用和游戏。比如熟悉的水平尺应用和极品飞车游戏。水平尺应用如图31所示,它主要利用iOS设备的加速度计传感器检测设备的水平状态。极品飞车游戏如图32所示,它主要利用iOS设备的加速度计传感器和陀螺仪传感器检测设备的移动和旋转等变化。


图31水平尺应用

 

图32极品飞车游戏

 

3.1加速度计
加速度计是一种能够感应设备一个方向上线性加速度的传感器,广泛用于航空、航海、宇航及武器的制导与控制中。加速度计的种类很多,


图33iOS上三轴加速度计

在iOS设备中目前采用的是三轴加速度计,可以感应设备上X、Y、Z轴方向上线性加速度的变化。如图33所示,iOS设备三轴加速度计的坐标系是右手坐标系,即: 设备竖直向上,正面朝向用户,水平向右为X轴正方向,竖直向上为Y轴正方向,Z轴正方向是从设备指向用户方向。
有人将加速度计称之为“重力加速度计”,这种观点是错误的。作用于三个轴上的加速度是指所有加速度的总和,包括了由重力产生的加速度和用户移动设备产生的加速度。在设备静止的情况下,这时候的加速度就只是重力加速度。
3.1.1访问加速度计
访问iOS设备加速度的API有两个不同的阶段,以iOS 5为分水岭,在iOS 5之前主要使用UIAccelerometer和UIAccelerometerDelegate,而在iOS 5之后使用CoreMotion框架中的CMMotionManager等类,CoreMotion框架不仅可以获得设备的加速度,还可以获得设备的角速度(由陀螺仪传感器感应)。
1. 使用UIAccelerometer
通过UIAccelerometer和UIAccelerometerDelegate访问设备加速度的时候,一旦设置委托对象,应用程序就开始不断地轮询系统获得设备的X、Y和Z轴的加速度,返回的信息被封装在UIAcceleration中,UIAcceleration有3个属性:
■x,X轴上加速度,单位为g,1g = 9.81ms-2。
■y,Y轴上加速度,单位为g。
■z,Z轴上加速度,单位为g。
■timestamp,时间戳属性,用来表示事件发生的相对时间。
2. 使用CMMotionManager
在iOS 5之后获得加速度的API是使用CoreMotion框架中CMMotionManager等类,CMMotionManager中的startAccelerometerUpdates和startAccelerometerUpdatesToQueue:withHandler:方法可以获得设备的加速度,使用stopAccelerometerUpdates方法停止获取设备的加速度。无论采用什么方法,我们都应该适时地开启和关闭获取设备加速度,因为获取设备的加速度是非常耗电的操作。

 

展开
目录

第1章开篇综述

1.1本书结构

1.2本书中的约定

1.2.1实例代码约定

1.2.2图示的约定

第2章手势识别

2.1手势种类

2.2使用手势识别器

2.2.1视图对象与手势识别

2.2.2手势识别状态

2.2.3检测Tap

2.2.4检测Long Press

2.2.5检测Pan

2.2.6检测Swipe

2.2.7检测Rotation

2.2.8检测Pinch

2.3触摸事件与手势识别

2.3.1事件处理机制

2.3.2响应者对象与响应链

2.3.3触摸事件

2.3.4手势识别

本章小结

第3章加速度计与陀螺仪

3.1加速度计

3.1.1访问加速度计

3.1.2实例: 通过Accelerometer访问加速度计

3.1.3实例: 通过CMMotionManager访问加速度计

3.1.4数据的“滤波”

3.1.5实例: 数据的“滤波”

3.1.6感知设备方向

3.1.7实例: 感知设备方向

3.2陀螺仪

3.2.1访问陀螺仪

3.2.2检测晃动设备

3.2.3实例: 检测晃动设备

本章小结

第4章指南针与磁力计

4.1访问磁力计

4.1.1访问导航方面的API

4.1.2磁力计与设备方向

4.1.3实例: 指南针应用

4.2检测磁场

4.2.1检测磁场API

4.2.2实例: 特斯拉计应用

本章小结

第5章照相机与摄像头

5.1iOS设备摄像头

5.2图像抓取

5.2.1图像选择器

5.2.2实例: 照相机抓取图片

5.2.3编辑图片

5.2.4保存图片

5.2.5添加照相机图层

5.3视频捕获

5.3.1实例: 视频捕获

5.3.2使用UIImagePickerController捕获

5.3.3使用AVFoundation捕获

本章小结

第6章音频设备访问

6.1音频API介绍

6.2AVFoundation框架实现音频录制与播放

6.2.1音频播放

6.2.2实例: 音频播放

6.2.3音频录制

6.2.4实例: 音频录制

本章小结

第7章使用蓝牙

7.1Game Kit应用开发

7.1.1对等结构网络

7.1.2Game Kit API

7.1.3实例: 基于蓝牙对等网络通信

7.2低功耗蓝牙

7.2.1Core Bluetooth API

7.2.2中心角色

7.2.3外设角色

7.3实例: 低功耗蓝牙通信

7.3.1中心角色编程实现

7.3.2外设角色编程实现

7.4使用SensorTag开发蓝牙低功耗应用

7.4.1SensorTag开发套件

7.4.2实例: 我的温度计

本章小结

第8章定位

8.1获得用户的位置

8.1.1定位服务编程

8.1.2实例: 定位服务

8.1.3距离过滤器和精度

8.1.4启动和停止定位服务

8.1.5获得位置信息

8.1.6关于定位服务的测试

8.2地理信息编码与反编码

8.2.1地理信息反编码

8.2.2实例: 地理信息反编码

8.2.3地理信息编码查询

8.2.4实例: 地理信息编码查询

8.3微定位技术

8.3.1地理围栏

8.3.2iOS 7中的iBeacon技术

8.3.3实例: iBeacon技术实现微定位

8.4接近传感器

本章小结

第9章iOS敏捷开发项目实战——增强现实版本铅锤应用

9.1应用分析与设计

9.1.1应用概述

9.1.2需求分析

9.1.3原型设计

9.2iOS敏捷开发

9.2.1敏捷开发宣言

9.2.2iOS可以敏捷开发

9.2.3iOS敏捷开发一般过程

9.3任务1: 创建应用并初始化工程

9.3.1任务1.1: 创建PlumbBob工程

9.3.2任务1.2: 设置状态栏

9.3.3任务1.3: 设置设备支持方向

9.3.4任务1.4: 添加铅锤图片

9.4任务2: 铅锤功能

9.4.1任务2.1: 添加铅锤ImageView到主视图

9.4.2任务2.2: 通过加速度计传感器控制铅锤

9.5任务3: 增强现实功能

9.6任务4: 关于我们

本章小结

展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证