新功能
iPhone OS 3
- Core Data
- Push Notifications 推送通知
- ExternalAccessory Kit
- SotreKit.framework 应用内购买
- App e-mail sheets 应用内邮件编辑
- MapKit.framework 地图
- keychain data sharing 钥匙链数据共享
iPhone OS 3.1/3.2
- video editor support 视频编辑
- Core Text
- Gesture recognizers
- File sharing
- PDF generation support
iPhone OS 4
- multitasking support, block, Grand Central Dispatch 多任务支持
- local push notification
- EventKit.framework 只读权限访问日历
- App SMS sheets 应用内短信编辑
iOS 5
- Aotumatic Reference Counting 自动引用计数
- Built-in Twitter framework 内建 Twitter 框架
iOS 6
Pass Kit
Pass Kit 是一个用来在 iOS 设备上存储优惠劵,登机牌等新框架。
MapKit
新的地图,支持方向显示,不再支持 URL 打开地图
+ (BOOL)openMapsWithItems:(NSArray *)mapItems launchOptions:(NSDictionary *)launchOptions {
if ([[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"maps"]]) {
// iOS 6 specific
[MKMapItem openMapsWithItems:<items> launchOptions:<options>];
} else {
// iOS 5 specific, fail back to Google
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://maps.google.com/<your url>"]];
}
Collection Views
Collection Views 推供了栅格样式布局的 UI 控件。类似与 iOS 系统应用 Photos 与 iBooks。不再需要使用第三方库和处理滚动。它还 UITableView 一样提供了插入,删除,重排的动画。
Auto Layout
Auto Layout 提供了一个定义界面元素布局规则的方式,其比 springs and structs 更直观,支持从右到左的语言的 UI 。
Automatic Reference Counting
ARC 从 iOS 5 开始引入,新增两个生命周期修饰符 strong 和 weak,并且不允许调用 release, retain, dealloc,自定义的 dealloc 方法只需释放资源,不用关心实例变量。
In App Purchases Hosted Content
iOS 6 可能脱管可下载内容到 Apple 的服务器用于应用内出售。
Social Framework
UIKit.Framework 引用 了新的 View Controller UIActivityViewController 用来配合 Social.Framework 分享内容到社交网络。
UI State Preservation
iOS 3 以前,恢复 UI 状态很麻烦。iOS 4 开始系统自动保存与恢复 UI 的状态,但是当应用在后台被关闭时,就不那么容易了。iOS 6 UIKit 支持更完事的状态保存与恢复。
Reminders
EventKit.Framework 在 iOS 4 时只允许读用户的日历,iOS 6 则支持与用户的 Reminders 交互。
Privacy
更严格的用户信息访问控制,在未显示通过用户同意的情况下 Contacts, Photo Library, Reminders, Calendars 都不允许访问。
Displaying Rich Text
UITextView, UITextField 都支持 CoreText.Framework 的 NSAtrributedString 。