开发者所需要知道的iOS6 SDK新特性
开发者所需要知道的iOS7 SDK新特性
开发者所需要知道的 iOS8 SDK 新特性
开发者所需要知道的 iOS 9 SDK 新特性
开发者所需要知道的 iOS 10 SDK 新特性
iOS6版本特性:(推出AutoLayout)
地图
抛弃了一直用的google map,而使用了自家的地图服务。
深度社交网络集成
新增Social.framework可以很简单的从系统中拿到认证然后向社交网络发送消息。
新增UIActivityViewController来询问用户的社交行为。
Passbook和PassKit
Passbook是iOS6自带的新应用,可以用来存储一些票务凭证
新增PassKit配合或者呼应Passbook的框架
Game Center
iOS4引入一直不好用,进行了一些升级,完善了一些功能。
提醒
自带的提醒应用得到了加强,Apple终于开放了向Reminder里添加东西和从中读取的API
新IAP(应用内购买)
能直接从iTunes Store购买音乐了。
Collection Views
新增UICollectionView和UICollectionViewController
UI状态保存
用户关闭app后下一次打开时能保持关闭时的界面状态。
隐私控制
除了位置信息以外,联系人、日历、提醒和照片的访问强制需求用户的允许。
其他
整个UIView都支持NSAttributedString的格式化字符串了,特别是UITextView和UITextField。
UIImage现在多了一个新方法,可以在生成UIImage对象时指定scale。
NSUUID用这个类现在可以很方便的创建一个uuid
iOS7版本特性:
UI相关
全新UI设计(UI大改以往拟物化应用原则)
状态栏,导航栏和应用实际展示内容不再界限
BarItem的按钮全部文字化,所有的导航和工具条按钮都取消了拟物化
程序打开加入了动画
UIKit的力学模型(UIKit Dynamics)
新增了UIDynamicItem委托,用来为UIView制定力学模型行为
游戏方面
直接使用iOS SDK制作和分发游戏的体验
游戏制作框架Sprite Kit Framework
连接和控制游戏硬件Game Controller Framework
GameCenter改进
多任务强化
可以通过设置UIBackgroundModes为fetch来实现后台下载内容
在AppDelegate里实现setMinimumBackgroundFetchInterval:以及application:performFetchWithCompletionHandler:来处理完成的下载
以前只能推送提醒用户进入应用下载,现在可以接到推送并在后台下载UIBackgroundModes设为remote-notification,并实现application:didReceiveRemoteNotification:fetchCompletionHandler:
AirDrop
新功能,可以用它来分享照片,文档,链接,或者其他数据给附近的设备。
地图
MKMapCamera,可以将一个MKMapCamera对象添加到地图上,在指明位置,角度和方向后将呈现3D的样子
MKDirections 获取Apple提供的基于方向的路径,然后可以用来将路径绘制在自己的应用中。
MKGeodesicPolyline 创建一个随地球曲率的线,并附加到地图上,完成一些视觉效果。
MKMapSnapshotter 使用其拍摄基于地图的照片,也许各类签到类应用会用到
改变了overlay物件的渲染方式
Inter-App Audio 应用间的音频
AudioUnit框架中加入了在同一台设备不同应用之间发送MIDI指令和传送音频的能力。
点对点连接 Peer-to-Peer Connectivity
MultipeerConnectivity框架可以用来发现和连接附近的设备,并传输数据,而这一切并不需要有网络连接。
Store Kit Framework
Store Kit在内购方面采用了新的订单系统,这将可以实现对订单的本机验证。
其他
MessageUI里添加了附件按钮
Xcode开始支持模块
iOS8版本特性:
应用扩展 (Extension)
允许我们在 app 中添加一个新的 target,用来提供一些扩展功能(比如在系统的通知中心中显示一个自己的 widget,在某些应用的 Action 中加入自己的操作,在分享按扭里加入自己的条目,更甚至于添加自定义的键盘等等)
App 开发时的统一
在 UIKit 中添加了一整套使用 size classes 来进行布局的 API,结合新的 Interface Builder 和 Auto Layout对于多尺寸屏幕的适配得到了前所未有的简化。
UIAlertView 和 UIActionSheet 这些老面孔也将退出舞台,取而代之全部统一以 UIAlertController 来呈现。
iCloud相关
推出了全新的被称为 Cloud Kit 的框架,使用 iCloud 对数据进行集成。
iCloud Drive的引入,在应用间共享访问文件就变得很容易了。可以使用 UIDocumentPickerViewController来从第三方存储 (以及第三方 app 通过应用扩展所实现的存储) 中选取文件。
Handoff 及其他 iOS 与 Mac 的协同开发
iOS 8 中的 Handoff 机制(就是可以在 Mac 上继续完成在 iOS 上半途的工作)
现在 Cocoa 和 CocoaTouch 在官方支持自制 framework
Health Kit 和 Home Kit
Health Kit 就是一个用户体征参数的数据库
Home Kit 以家庭,房间和设备的组织形式来管理和控制家中适配了 Home Kit 的智能家电。
Home Kit Accessory Simulator提供了一个模拟器来模拟智能家电设备
游戏方面
Scene Kit3D渲染框架,在一段时间内还会是被 Cocos2dx/Unity 所统治的。
对于 A7 和以上级别的 GPU 推出了一套全新的称为 Metal 的绘制 API
其他
需要显示 UI 或者播放声音的通知,包括 Local 通知也需要实现弹窗获得用户许可了。使用 -registerUserNotificationSettings:来向用户获取许可。
对于不需要打扰用户(也就是 iOS 7 加入的静默通知)的类型不再需要弹框获取用户许可。
通知中心加入了非常方便的 Action 特性,用户可以在收到通知后,在不打开应用的情况下完成一些操作。
CoreLocation室内定位
开放了 Touch ID 的验证
新增加了 Photos.framework 框架,用于与系统内置的 Photo 应用进行交互(可以监听其他应用对于照片的改变)
iOS9版本特性:
Multitasking
多任务特性,特别是分屏多任务使得 iPad 真正变得像一个堪当重任的个人电脑。
迁移到 AVKit 的框架下来,因为 Media Player 将在 iOS 9 被标记为 deprecated 并不再继续维护。