iOS翻译iOS DeveloperiOS技术中心

翻译:iOS9.0 新功能(What's New in

2016-06-09  本文已影响633人  栗子烤肉

本文总结了iOS9中与开发者相关的关键特性,目前销售的iOS设备上运行着这些功能。本文还列出了一些文档,在这些文档中更加详细的描述了新功能。

关于已知问题的最新新闻和信息,参见iOS 9 版本说明( iOS 9 Release Notes)。iOS 9 中新增加的API列表,参见iOS 9.0 API差异( iOS 9.0 API Diffs)。关于新设备的更多信息,参见iOS设备兼容性参考( iOS Device Compatibility Reference)。

iPad多任务改进

iOS 9 增强用户在ipad上使用Slide Over、拆分视图、画中画的多任务体验。Slide Over特性允许用户选择另一个app并迅速与之交互。拆分视图特性让用户能够在iPad Air2上并排使用两个app。画中画特性(也成为PiP)让用户在其他应用上漂浮一个窗口用来观看视频。

当用户想要在屏幕上同时看到两个应用,当这一切发生时,你无法控制。尽管拆分视图和Slide Over是用户控制的,但为了确保用户有一个很好的多任务体验,有几件事你需要做。

想学习更多关于当用户使用拆分视图、SlideOver时,你的应用可以更好的响应,参见采用多任务提高ipad体验( Adopting Multitasking Enhancements on iPad)。

有了拆分视图和Slide Over,用户可以控制他们是否想使用PiP在另一个运行的应用上观看视频。如果视频播放不是你的应用的主要功能,你不需要做任何事情来支持PiP体验。

当用户选择画中画,使用AVKit或者AV Foundation 的API。视频播放类中定义的媒体播放框架在iOS 9中弃用,并且不支持PiP。学习关于你的视频播放应用如何应对PiP,参见画中画快速入门(Picture in Picture Quick Start)。

3D 触摸

3D触摸给iOS 9 用户提供了额外的交互维度。在支持的设备上,用户可以在主屏幕上按应用图标快速选择特殊应用动作。在一个应用内,用户可以使用各种压力来预览一个项目、在单独的视图上打开一个项目,并完成相关行为。

iOS 9 提供一下3D 触摸API:

无论你采用哪些API,你的应用必须在运行时检查3D Touch是否可用。关于3D Touch的帮助,参见在iPhone上使用3D Touch(Adopting 3D Touch on iPhone)。

搜索

iOS 9 中的搜索为用户提供更加新颖的方式来获取应用内的信息,即便该应用并未安装。当你的内容可搜索,用户可以通过Spotlight 和Safari搜索结果或者Handoff和Siri建议来访问你应用内的行为和深层内容。使用关于搜索的API,你可以决定在搜索结果中什么样的索引指向什么样的信息,在点击你应用或网站结果后用户重定向的位置。

结合iOS 9 搜索非常简单:你不需要搜索的任何经验,大部分开发者发现只需要几个小时便可以使他们的内容普遍的搜索到。学习如何使你的应用或网站内容更容易搜索,参见应用搜索编程指南( App Search Programming Guide)。

在iOS 9 搜索中隐私是一个重要的特性,为了给用户最好的搜索体验同时保护用户隐私数据,iOS 9 提供以下索引:

iOS 9 提供以下API让你的内容更加容易搜索:

此外,添加一个智能应用横幅为用户提供一个简单的方法链接到你的运营(学习如何使用智能应用横幅,参阅利用智能应用横幅推广应用(Promoting Apps with Smart App Banners))

游戏

iOS 9 包含几个技术改进,可以比以往更加容易实现游戏的图形和音频功能。利用高级框架易于开发,或者利用新的低级增强功能来巩固GPU的力量。

GameplayKit

GameplayKit框架(GameplayKit.framework)提供了用于构建游戏的技术基础。使用GameplayKit开发游戏机制,并将其与任何高级图形引擎结合,例如SceneKit或SpriteKit,来构建一个完整的游戏。这个框架提供了创建游戏的模块化结构,包括:

GameplayKit还包括通用游戏算法的标准实现,这样你可以少花点时间阅读白皮书,有更多的时间使你的游戏更加独特。以下列出的是GameplayKit中的几个标准的算法实现。

了解更多关于GameplayKit,参见GameplayKit编程指南( GameplayKit Programming Guide)和GameplayKit框架参考(GameplayKit Framework Reference.)。下载示例代码FourInARow: Using the GameplayKit Minmax Strategist forOpponent AI, AgentsCatalog: Using the Agents System in GameplayKit,and DemoBots: Building a Cross Platform Game with SpriteKitand GameplayKit.

I/O模型

I/o模型框架(ModelIO.framework)提供了3D模型资产和相关资源的一个系统级理解。你可以在以下几种类型的任务中使用这个框架:

了解更多关于I/O模型,参见I/O模型框架参考( Model I/O Framework Reference)。

MetalKit

MetalKit框架(MetalKit.framework)提供了一组实用函数和类,用于减少创建金属应用所需的努力。MetalKit为三个关键领域提供开发支持:

了解更多关于MetalKit API,参见金属框架参考( MetalKit Framework Reference)。更多关于一般的金属信息,参见金属编程指南( Metal Programming Guide),金属框架参考(Metal Framework Reference)和金属材质语言指导(Metal Shading Language Guide.)

金属性能着色器

金属性能着色器框架(MetalPerformanceShaders.framework)提供高度优化设计的算法和图形着色器,可以轻松高效的集成到你的应用。这些数据并行着色器是专门利用iOS GPU的独特硬件特点。

使用金属性能着色器类为所有支持的硬件实现最优性能,而不需要针对特定的iOS GPU更新你的着色器代码。MetalPerformanceShader 对象无缝的融合你的金属应用,可以用于资源对象例如缓冲区和纹理。

金属性能着色器框架提供的常用着色器:

金属中的新特性

金属框架(Metal.framework)添加的新特性使你的图形渲染应用看起来更好并更高效。这些特性包括:

SceneKit新功能

SceneKit框架(SceneKit.framework)包含iOS 9新特性,包括:

更多关于这些和其他新功能,参见SceneKit框架参考( SceneKit Framework Reference)。

SpriteKit新特性

SpriteKit框架(SpriteKit.framework)包括iOS 9 中新特性,例如:

更多关于这些和其他新功能,参见SpriteKit框架参考(SpriteKit Framework Reference)。

应用瘦身

应用瘦身帮助你为不同的平台开发和自动化安装。应用瘦身包括以下内容:

了解更多关于应用瘦身,参阅应用瘦身(iOS, watchOS)。

支持从右到左语言

iOS 9 对从右到左语言提供全面的支持,这使得更容易为你提供翻转的用户界面。例如:

了解更多关于提供用户界面,参见从右到左语言帮助( SupportingRight-to-Left Languages)。

应用传输安全

应用传输安全(ATS)是在应用间安全通信的最佳实践。ATS防止意外泄露,提供默认的安全行为,这很容易采用,在iOS9和OS X v10.11中默认开启。你应该尽快采用ATS,无论你正在创建一个新应用或是更新一个存在的应用。

如果你正在开发一个新应用,你应该使用HTTPS。如果你有一个现有的应用,你应该尽可能多的使用HTTPS,并创建一个计划尽快迁移应用。此外,如果通过上层应用的API进行通信,那么你需要通过TLS1.2版本高级算法进行加密保护,如果你没有这么做,那么就会报错。如果你的APP确实需要非加密领域,你必须在你的app Info.plist文件中定义这个领域。

扩展点

iOS 9介绍了几个新的扩展点(扩展点定义了使用政策并在你创建一个应用的扩展时提供使用的API)。具体:

每个网络扩展点需要苹果的特别许可。

了解更多关于创建应用程序扩展,参见应用扩展编程指南( App ExtensionProgramming Guide)。

联系和联系UI

iOS 9 介绍了联系和联系UI框架(Contacts.framework和 ContactsUI.framework),提供了地址簿和地址簿UI框架的替代品。了解更多,参见联系框架参考(ContactsFramework Reference)和联系UI框架参考(ContactsUI Framework Reference)。

手表连通性

手表连通性框架(WatchConnectivity.framework)提供iPhone和配对的苹果手表间双向通信。使用这个框架来协调你iOS应用和你相关手表应用的活动。该框架支持同时运行应用间的即时消息和其他情况下但的背景信息。了解更多,参见手表连通性框架参考(WatchConnectivity Framework Reference)。

钥匙链

钥匙链提供了更多保护选项和安全领域一种新的加密密钥。具体:

Swift 改进

了解Swift新特性,参见Swift语言( Swift Language)。

额外框架变化

除了上面描述的重大变化,iOS 9 包括其他改进。

AV 基础框架

AV基础框架(AVFoundation.framework)添加新AVSpeechSynthesisVoiceAPI让你可以指定一个声音标识符而不是语言。你可以使用name 和quality 属性来获取声音的信息。

AVKit 框架

AVKit框架(AVKit.framework)包含AVPictureInPictureController和 AVPlayerViewController类,帮助你加入画中画。关于画中画的更多信息,参见iPad多任务改进( MultitaskingEnhancements for iPad)。

CloudKit框架

如果你有一个CloudKit应用,你可以使用CloudKit网络服务或ClouldKit JS,这是一个javascript库,为用户提供一个web界面访问应用中的相同数据。你必须创建数据库的schema,并且用于web界面来取回、创建、更新和删除记录、区域和订阅。更多信息,参见CloudKit JS参考(CloudKit JS Reference),CloudKit 网络服务参考(CloudKit Web Services Reference),CloudKit目录:介绍CloudKit(Cocoa和JavaScript)(CloudKitCatalog: An Introduction to CloudKit (Cocoa and JavaScript)* *)。

基础框架

基础框架(Foundation.framework)包含以下改进:

HealthKit框架

HealthKit框架(HealthKit.framework)包含以下改进:

本地认证框架

本地认证框框(LocalAuthentication.framework)包含以下改进:

MapKit框架

MapKit框架(MapKit.framework)包含以下几个补充,可以为你提供更丰富的用户体验,具体:

PassKit 框架

PassKit框架(PassKit.framework)包含Apple支付改进几个额外支持。具体:

Safari服务框架

Safari服务框架(SafariServices.framework)包含以下改进:

SFSafariViewController可用于在应用中显示网页内容。它共享cookies和其他Safari数据,拥有Safari的很多特性,例如Safari的自动填充和Safari阅读器。不同于Safari本身, SFSafariViewController UI是专门用于显示一个页面,让用户回到你应用位置的一个完成按钮。

如果你的应用显示网页内容,但不自定义内容,考虑用SFSafariViewController更换WKWebView 或基于UIWebView的浏览器。

UIKit框架

UIKit框架(UIKit.framework)包含许多改进,例如:

弃用的API

以下API已弃用:

特定API用法的完整列表,参阅iOS 9 API差异( iOS 9.0 API Diffs)。

官方原文地址:

https://developer.apple.com/library/ios/releasenotes/General/WhatsNewIniOS/Articles/iOS9.html#//apple_ref/doc/uid/TP40016198-SW1

上一篇下一篇

猜你喜欢

热点阅读