iOS SDK 的新功能

了解 iOS SDK 中的关键技术和功能。iOS SDK 是用于为 iPhone、iPad 或 iPod touch 构建 app 的工具包。有关最新发布版本 (包括每个 beta 版本) 中 API 更改的详细信息,请参阅“iOS 发布说明 (英文)”。

iOS 13

借助 iOS 13 SDK,您的 app 能够充分利用“深色模式”、“通过 Apple 登录”、“通过 CloudKit 同步 Core Data”、PencilKit 等功能。您可以借助 SwiftUI 更快地构建动态用户界面、使用 Combine 编写现代事件处理代码,以及利用 UIKit 为您的 iPad app 创建 Mac 版本。

深色模式

iOS 13 中,用户可以切换到深色模式,将 iOS 的外观变成暗色调方案,让控件消隐在背景中,从而使用户能够专注于自己的工作。有关在 app 中整合深色模式的信息,请参阅“外观自定 (英文)”。如需设计指导,请参阅“Human Interface Guidelines (英文)”。

SwiftUI

SwiftUI 是一种为 iOS、macOS、watchOS 和 Apple TVOS 构建用户界面的现代方法。借助基于组合的声明式编程方法,您可以比以往更快地构建动态界面。这一框架提供了用于声明 app 用户界面的视图、控件和布局结构。它还提供事件处理程序,用于向 app 传递轻点、手势和其他类型的输入,并提供了工具,用于管理从 app 模型到用户能够看到并与之互动的视图和控件之间的数据流。

若要开始,请参阅“学习使用 SwiftUI 打造 app (英文)”。

多个 UI 实例

iOS 13 中,用户可以在您的 app 中同时创建和管理多个 UI 画面,并使用 app 切换器在它们之间进行切换。在 iPad 上,用户还可以并排显示您 app 的多个 UI 画面。每个用户界面情景既可显示不同的内容,也能以不同的方式显示内容。例如,“日历”app 可以并排显示特定日期和整个月份的预约。

有关更多信息,请参阅 UIKit (英文) 开发者文档中的“App 和场景 (英文)”。

SF Symbols

符号图像提供了一整套一致的图标,供您在 app 中使用,并确保这些图标可以适应不同大小和特定于 app 的内容。符号图像采用 SVG 格式来实现基于矢量的形状,这些形状可以在缩放同时保持其清晰度。它们还支持许多通常与文本相关的特征,例如粗细和基线对齐。

要查找可以包含在 app 中的符号图像,请使用 SF Symbols app 或创建您自己的符号图像。要进一步了解,请参阅“在您的 UI 中配置和显示符号图像 (英文)”。

将您的 iPad App 带入 Mac

Xcode 11 能助您更轻松顺利地将着手将 iPad app 带入 Mac。首先,在您 iPad app 的项目设置中选中“Mac”复选框。要进一步了解,请参阅“为您的 iPad app 创建 Mac 版本 (英文)”和“将您的 iPad App 带入 Mac”。

ARKit 3

ARKit 3 带来了以下新功能:

  • 动作捕捉。这项功能让您的 app 可以跟踪人体骨骼特征的运动。
  • People Occlusion。这项功能可以让真实人物从相机馈送的虚拟内容前面走过。
  • iTrack 跟踪多个面孔。在配备原深感摄像头的设备上,前置摄像头最多可以跟踪 3 个面孔。
  • 同时使用前置和后置摄像头。同时使用两个摄像头来获取面孔和环境数据。
  • 协作会话。协作绘制环境并更快地实现共享 AR 体验。
  • 视觉连贯性。自动添加相机运动模糊和噪点等效果,使 AR 内容更加逼真。
  • AR Coaching UI。2D 重叠 UI 帮助引导用户入门、检测平面等。
  • 自动检测图像尺寸并更快地载入参考图像。
  • 更加可靠的 3D 对象检测,能够检测 100 张图像。
  • HDR 质量的环境纹理。

要进一步了解这些功能,请参阅 ARKit (英文) 框架文档。

RealityKit

RealityKit 是一个全新的 Swift 框架,用于模拟和渲染增强现实 app 中使用的 3D 内容,其中包括为 AR 体验添加动画、物理效果和空间音频的功能。RealityKit 利用 ARKit 提供的信息,将虚拟对象无缝整合到现实世界中。有关更多信息,请参阅 RealityKit (英文) 开发者文档。

通过 Apple 登录

“通过 Apple 登录”为用户提供了快速、安全且保障隐私的方式,来设置帐户并开始使用您的 app 和网站中提供的服务。有关更多信息,请参阅“通过 Apple 登录”。

后台任务

利用全新的 BackgroundTasks 框架,让您的 app 可以在后台运行,同时使内容保持最新并执行运行时间较长的任务。有关更多信息,请参阅 BackgroundTasks (英文) 框架文档。

相机拍摄

借助 AVCaptureMultiCamSession (英文),可以同时使用前置和后置摄像头录制视频。借助 AVSemanticSegmentationMatte (英文),在拍摄的照片中提取头发、皮肤和牙齿的分割蒙版。通过在速度和质量之间做出权衡选择,指定所需的照片质量。在支持 ARKit 的 app 中,停用超广角摄像头的几何失真校正功能。

如需进一步了解这些功能和 AVFoundation Capture 子系统,请参阅“相机和媒体拍摄 (英文)”。

Combine

Combine 是一个全新框架,提供了声明式 Swift API,用于随时间推移处理值。这些值可以表示用户界面事件、网络响应、计划事件以及许多其他类型的异步数据。利用 Combine,您可以声明用于公开可变值的发布器,以及从发布器接收这类数据的订阅器。Combine 通过集中管理事件处理代码并消除一些繁琐技术 (比如嵌套闭包和基于约定的回调等),让您的代码更易于阅读和维护。

有关更多信息,请参阅 Combine (英文) 框架文档。

Core Haptics

借助全新的 Core Haptics 框架,您可以设计和使用触感体验来定制 app 的触觉反馈,以此扩展系统提供的默认体验。如需进一步了解,请参阅 Core Haptics (英文) 框架文档。

Apple CryptoKit

利用全新的 Apple CryptoKit 框架,可以安全有效地执行常见的加密操作,例如:

  • 计算和比较加密安全摘要。
  • 利用公钥加密技术创建和评估数字签名。
  • 生成对称密钥并在信息认证和加密等其他操作中使用这些密钥。

有关更多信息,请参阅 Apple CryptoKit (英文) 框架文档。

MetricKit

MetricKit 是一个全新的框架,可提供系统针对您的 app 所采集的设备端功耗和性能指标,供您用来提升 app 的性能。有关更多信息,请参阅 MetricKit (英文) 框架文档。如需进一步了解如何利用 MetricKit 提升 app 性能,请参阅“提升 App 的性能 (英文)”。

PencilKit

全新的 PencilKit 框架让您可以轻松快捷地将手绘内容整合到您的 app 中。PencilKit 可为您的 iOS app 提供一个绘图环境,以便获取来自 Apple Pencil 或用户手指的输入,并转换为可在 iOS 或 macOS 中显示的高质量图像。该环境还提供用于创建、擦除和选择线条的工具。

有关更多信息,请参阅 PencilKit (英文) 框架文档。

Core ML 3

Core ML 3 现在支持设备端模型个性化,让您可以在 app 中以私密方式使用特定于用户的数据来重新训练或微调模型,从而更新模型。Core ML 还支持 100 多种模型层,从而大大扩展了对动态神经网络的支持。

随着全新 BackgroundTasks (英文) 框架的推出,您现在可以安排在后台执行需时更长的 Core ML 模型更新和预测。

有关更多信息,请参阅 Core ML 框架文档。

计算机视觉

iOS 13 开始,您可以使用计算机视觉框架来实现以下功能:

  • 对图像执行显著性分析。
  • 检测图像中的人和动物。
  • 对图像分门别类以便分类和搜索。
  • 使用特征打印来分析图像的相似之处。
  • 对文稿执行文本识别。

有关更多信息,请参阅计算机视觉 (英文) 框架文档。

VisionKit

借助全新的 VisionKit 框架,您的 app 可让用户使用设备摄像头来扫描文稿,就像在“备忘录”app 中扫描文档那样。将这项功能与计算机视觉框架的文本识别功能相结合,就可以实现从扫描的文稿中提取文本。如需进一步了解扫描文稿功能,请参阅 VisionKit (英文) 框架文档。

Metal

Metal 让 GPU 能够更好地控制图形和计算管线,增加了多项功能来简化高级 GPU 处理,让您能更轻松地为不同类型的 GPU 提供支持。新工具 (包括模拟器中的 Metal 支持) 帮助您更快地着手开发,并了解您的 iOS app 能否正确地使用 Metal 技术。有关更多信息,请参阅“Metal (英文)”。

Metal Performance Shaders 提供了用于图像处理、机器学习和光线追踪的新选项,其中包括光线追踪加速架构的 GPU 生成和动态更新。有关更多信息,请参阅 Metal Performance Shaders (英文) 框架文档。

Core Data

通过 CloudKit 同步您的 Core Data 存储,让您的 app 用户可以在他们的所有设备上无缝访问自己的数据。通过将 Core Data 与 CloudKit 搭配使用,就能获得本地持久存储和云备份及分发的双重优势。如需进一步了解,请参阅“使用 CloudKit 镜像 Core Data 存储 (英文)”。

Core NFC

借助 Core NFC 框架,您的 app 现在可以支持标签写入,包括写入 NDEF 格式的标签。该框架还支持使用 ISO 7816、MIFARE、ISO 15693 和 FeliCa 等本地协议来读写标签。有关更多信息,请参阅 Core NFC (英文) 框架文档。

SiriKit

您的 app 可以根据上下文以及特定的时间向 Siri 提供预订信息,以便用户可以根据具体情况采取相应的操作。例如,他们可以确认酒店预订、收到办理值机手续的提醒,以及获得返还租赁车辆的帮助。有关更多信息,请参阅“Siri 日程建议 (英文)”。

借助 Media 域,用户可以在您的 app 中使用 Siri 收听和控制音频。如需进一步了解,请参阅 SiriKit (英文) 文档中的“Media (英文)”。