1.1 带你认识iOS

1.1.1 iOS简介

iOS系统是由苹果公司开发的手持设备操作系统,最初是设计给iPhone使用的,后来陆续套用到iPod touch、iPad及Apple TV等苹果公司的产品上。它最早于2007年1月9日的苹果Macworld展览会上公布,随后苹果公司于同年的6月发布第一版iOS操作系统,当初的名称为“iPhone运行OS X”。当时的苹果公司CEO史蒂夫·乔布斯说服了各大软件公司及开发者先搭建低成本的网络应用程序(Web APP),这样可以使得它们能像iPhone的本地化程序一样来测试“iPhone运行OS X”平台。

2007年10月17日,苹果公司发布了第一个本地化iPhone应用程序开发包(SDK)。

2008年3月6日,苹果发布了第一个测试版开发包,并且将“iPhone runs OS X”改名为“iPhone OS”。

2008年9月,苹果公司将iPod touch的系统也换成了“iPhone OS”。

2010年2月27日,苹果公司发布iPad,iPad同样搭载了“iPhone OS”。

2010年6月,苹果公司将“iPhone OS”改名为“iOS”,同时还获得了思科iOS的名称授权。

2010年第四季度,苹果公司的iOS占据了全球智能手机操作系统26%的市场份额。

2011年10月4日,苹果公司宣布iOS平台的应用程序已经突破50万款。

2012年2月,iOS平台的应用总量达到552247个,其中游戏应用最多,达到95324个,比重为17.26%;书籍类以60604个排在第二,比重为10.97%;娱乐应用排在第三,总量为56998个,比重为10.32%。

2012年6月,苹果公司在WWDC 2012上推出了全新的iOS 6,提供了超过200项新功能。

2013年6月11日,在WWDC2013大会上苹果公司发布了iOS 7系统,这个系统采用了一套全新的配色方案,整个界面有很明显的半透明果冻色,拨号、天气、日历、短信等几乎所有应用的交互界面都进行了重新设计,整体看来更为动感、时尚,全新的iOS 7系统可应用在iPhone 4及以上机型中。

2014年6月3日,苹果公司在WWDC 2014上公布了iOS 8系统,并提供了开发者预览版更新。iOS 8在外观上依旧秉承扁平化风格,功能方面得到了很大的提升。它支持与Mac持续无缝对接,在通知中心快速回复包括第三方应用在内的消息通知,增加了QuickType联想输入、HealthKit健康管理应用、全新的照片同步功能。此外,iOS 8还向开发者开放了Touch ID API,支持第三方输入法。伴随着本次系统的升级,iPhone 4正式被苹果淘汰,iOS 8升级适配从iPhone 4S开始,iPad则从iPad 2起步。

目前,iOS的生态圈非常成熟,只要开发者具有良好的创意,并将该创意实现为iOS应用程序,接下来就可以把这个应用程序发布到苹果提供的App Store中,然后就可能从苹果庞大的电子设备用户群中获取利润。事实上,现在已经有大量团队、个人通过苹果的App Store取得了成功。

截止到本书完稿时,Apple公司最新的手机是iPhone 6 Plus,最新的平板电脑是iPad 4,它们都搭载了iOS 8的操作系统,本书将围绕基于iOS 8的应用开发来阐述。

1.1.2 iOS框架层次

iOS包含了非常多的技术内容,包括界面管理、内存的分配与回收、事件发送、多任务处理、网络、多媒体服务等。尽管iOS功能五花八门,但是大体上可以将其分为4个层次,如图1-1所示。

015-01

图1-1 iOS分层架构图

图1-1 所示4个层次的相关讲解具体如下。

  • Core OS层:位于iOS框架的最底层,主要包含内核、文件系统、网络基础架构、安全管理、电源管理、设备驱动、线程管理、内存管理等。简而言之,该层提供了最低级的、系统级的服务。
  • Core Services层:称之为核心服务层,主要提供诸如字符串管理、集合管理、网络操作、URL实用工具、联系人管理、偏好设置等服务。除此之外,它还提供了很多基于硬件特性的服务,如GPS、加速计、陀螺仪等。
  • Media层:依赖于Core Services层提供的功能,主要负责图形与多媒体服务。它包含了Core Graphics、Core Text、Open GL ES、Core Animation、AVFoundation、Core Audio等与图形、视频和音频相关的功能模块。
  • Cocoa Touch层:直接向iOS应用程序提供各种基础功能的支持。其中,UIKit框架提供了各种可视化控件供应用程序使用,如窗口、视图、视图控制器与各种用户控件等。另外,UIKit也定义了应用程序的默认行为和事件处理结构。

iOS提供的这些框架是由许多类、方法、函数、文档按照一定的逻辑组织起来的集合,它为我们提供了完整的项目解决方案,使研发程序变得更加容易。大多数情况下,应用程序会使用UIKit框架提供的各种界面类构建程序界面,并使用Foundation框架中定义的各种基本类型(字符串、数字等)来保存程序的数据,由于这两个框架太重要了,因此,它们结合在一起就称为Cocoa Touch。

1.1.3 iOS开发设备

强大的iOS系统被广泛地应用于苹果公司的移动系列产品,只要是iOS程序,都支持在iOS系统的某些设备上运行,它们的主要差异表现在屏幕大小。目前,iOS程序主要分为iPhone程序和iPad程序,它们分别运行在iPhone和iPad设备,具体介绍如下。

1. iPhone

iPhone是一个集合了照相、个人数码助理、媒体播放器及无线通信设备的掌上智能手机。iPhone最早由史蒂夫·乔布斯在2007年1月9日举行的Macworld上宣布推出,并于同年6月29日在美国上市。第七代iPhone 5S和iPhone 5C于2013年9月10日发布,同年9月20日正式发售。第八代的iPhone 6和iPhone 6 Plus于2014年9月10日发布,全新的iPhone 6如图1-2所示。

016-01

图1-2 全新的iPhone 6

图1-2所示是一款金色的iPhone 6,与iPhone 5S相比,屏幕尺寸更大,整体外观拉长。针对不同的iPhone设备,它们的屏幕尺寸和分辨率见表1-1。

表1-1 iPhone的分辨率参数

017-01

表1-1是不同型号iPhone的屏幕尺寸和分辨率,通过对比发现,iPhone的屏幕尺寸逐渐增大,分辨率逐渐升高,厚度逐渐减小。

2. iPad

iPad是苹果公司于2010年发布的一款平板电脑的名称,定位介于苹果的智能手机iPhone和笔记本电脑产品之间,它只有4个按键,布局与iPhone布局一样,提供了浏览互联网、收发电子邮件、观看电子书、播放音频和播放视频等功能。

2010年1月27日,在美国旧金山欧巴布也那艺术中心所举行的苹果公司发布会上,平板电脑iPad正式发布。

2012年3月8日,苹果公司在美国欧巴布也那艺术中心发布第三代iPad,外形与iPad 2相似,但是电池容量增大,

2012年10月24日,苹果公司举行新品发布会发布第四代iPad平板电脑,它拥有9.7英寸的屏幕,配置了A6X芯片,有关性能能达到上代iPad所用A5X芯片的两倍左右。

2012年10月23日,发布了屏幕尺寸为9.7英寸,更轻、更薄的iPad Air。

2014年10月17日凌晨1点,苹果在美国加州库比蒂诺总部Infinite Loop园区的Town Hall大会堂如期召开了主题为“久违了”的新品发布会。在此次发布会上,苹果正式发布iPad Air 2。接下来,通过一张图来展示iPad Air 2,如图1-3所示。

018-01

图1-3 iPad Air 2

图1-3所示是一款金色的iPad Air 2,与iPad Air相比较,机身厚度更薄,重量减轻。针对不同的iPad设备,它们的屏幕尺寸和分辨率见表1-2。

表1-2 iPad的分辨率参数

018-02

表1-2是不同型号的iPad的屏幕尺寸和分辨率,由此可知,iPad的屏幕尺寸并没有发生改变,只是分辨率增大两倍。

1.1.4 iOS 8的全新功能

2014年,苹果在WWDC开发者大会上发布了全新一代操作系统iOS 8,它与iOS 7的界面基本相同,但内在却添加了众多新功能,具体如下。

1. iOS 8支持第三方输入法

苹果的输入法一直被人诟病,iOS 8开放了第三方输入法,支持更多的第三方输入法,例如,搜狗、QQ拼音等。

2. iMessage发送语音、视频等信息

iMessage(即时通信软件)加入群聊功能,可以添加、删除联系人,群聊支持防打扰功能,可以自行退出群聊。iMessage可以发送语音、短视频信息,而且在锁屏界面就能拿起来听iMessage的语音,体验与微信非常类似。

3. 全新的通知中心

当屏幕顶部接收到推送时,向下拉动,会看到快速操作的界面,直接在推送中操作即可,无需再进入该应用操作,让用户在不离开当前页面的前提下处理推送消息,再次提高处理效率。例如,iPhone在锁屏的状态下,用户可以在通知中心里面直接回复短信。

4. HealthKit健康平台

iOS 8新增加了一个统一的健康应用API,即HealthKit,供开发者使用,可以让所有的健康应用的数据能够统一管理和展示。而且苹果也发布了移动健康应用平台,即Health,第三方的健康管理应用可以通过此平台来管理心率、运动、饮食等健康数据。

5. Family Sharing家庭分享

家庭共享功能,可以在家庭成员间共享日程、位置、图片和媒体,最为重要的两点是,家庭成员间在iTunes商店上购买项目可以共享,且能够控制儿童购买应用。

6. 改进Siri

Siri(语音控制功能)更加智能,并且增强了汽车内Siri语音的体验,如用户正在开车的时候,能够利用Siri主动来完成某些事情。

7. 针对中国的优化

iOS 8针对中国市场进行了特殊优化,如准确的中文导航和农历等。

8. 改进Spotlight搜索

iOS 8的Spotlight全局搜索变得更强大,不再只局限于本地搜索,而是联网搜索,可以联网搜索电影、新闻、音乐,还能够直接搜Google。

9. 改进多任务界面

在多任务管理界面的上方,新增加了最近联系人,可以直接发邮件、打电话等,极大地增强了iOS的效率。

10. 强大的照片编辑功能

iOS 8中加入了图片“智能编辑”,调整图片的多个参数,如曝光度、对比度、亮度等。还能够同步至iCloud,多设备之间共享,且支持Windows设备。

11. 开放TouchID功能

第三方应用可以使用TouchID接口,意味着未来的很多应用都可以用指纹识别功能了。

12. QuickType快速输入功能

苹果虚拟键盘上新增加了快速输入栏,能够出现字母或者汉字的联想,使输入更迅速。

13. HomeKit智能家居功能

苹果向智能家居开放的API,如未来通过这个API可以实现iPhone控制门锁,控制家庭灯光和电器开关等。