macOS SDK 的新功能

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

macOS 11

借助 macOS 11 SDK,您的 app 可以利用重新设计的用户界面、通知中心里的小组件以及新的 SwiftUI 布局。机器学习技术为准备好接受训练的模型添加了样式转换和动作分类,并提供了基于 CloudKit 的部署解决方案。计算机视觉 API 的新增功能可帮助您的 app 更全面地分析图像和视频。您可以在电子邮件和网站中添加标记,帮助 Siri 日程建议来呈现您的日程。此外,Safari 浏览器增加了网页扩展来进一步自定浏览体验,而屏幕使用时间现在可以将其他浏览器的网页使用数据纳入统计范围。

全新用户界面

macOS 11 推出了重新设计的用户界面,不仅增强了可用性和易用性,而且提高了与 iPadOS 的一致性。对于现有的 macOS app,如果 app 使用系统提供的控件,大多数都会自动采用新的外观。如果您的 app 采用自定义外观,请访问“macOS Human Interface Guidelines (英文)”,了解如何更新您的 app,使其仍然能够为用户呈现精美的外观。

AppKit 带来了多种界面元素变化,包括提醒、浏览器、按钮、菜单、搜索栏、分段控件以及工具栏。有关详细信息,请参阅“AppKit 发布说明 (英文)”。

App Store 隐私信息

隐私保护是整个 macOS 体验的核心所在,而 Mac App Store 中新增的隐私处理信息展示功能可帮助用户更清晰地了解个人信息的处理方式,并更好地掌控他们的个人信息。今年晚些时候,Mac App Store 将帮助用户了解所使用 app 的隐私做法,为此,您需要在 App Store Connect 中输入您隐私做法的详细信息,该信息会在您的 Mac App Store 产品页面上显示。

小组件

小组件让用户可以在 macOS 通知中心一目了然地快速、及时查看来自 app 的信息。macOS 11 提供了重新设计的小组件体验。您的 app 能够以不同的尺寸呈现小组件,这些小组件支持用户自定,可加入互动功能,还能在适当的时候更新内容。要了解有关设计小组件的信息,请参阅“Human Interface Guidelines (英文)”。要了解如何在 app 中支持小组件,请参阅 WidgetKit (英文) 框架。

Mac Catalyst

通过 Mac Catalyst 构建的 app 会自动采用 macOS 11 的全新外观,并充分利用 Mac 的原生屏幕分辨率。macOS 11 包含多个针对键盘、菜单、工具栏、颜色面板等的全新和改进 API,让您可以更好地控制 app 的外观和行为。要了解如何完全控制界面上的每个像素以及 Mac 特有的控件,例如下拉菜单和复选框,请参阅“为您的 Mac App 选择一个用户界面习惯用法 (英文)”。要进一步了解如何构建 iPad app 的 Mac 版本,请参阅 Mac Catalyst (英文) 文档。

机器学习

macOS 11 的更新让您的机器学习 app 可以实现新的功能、灵活性和安全性。Core ML 增加了模型部署和一个仪表盘,以便利用 CloudKit 托管和部署模型,这样,您无需更新 app 或自己托管模型,就可以轻松地更新模型。Core ML 模型加密为您的模型额外增加了一层安全保障,为您处理加密过程和密钥管理。Core ML 转换器支持直接将 PyTorch 模型转换为 Core ML。

Create ML app 新增的样式转换模板能够对照片和视频进行实时样式化处理,而新增的动作分类模板可以对视频片段中单个人物的动作进行分类。对象检测和文字标记模板具有新的迁移学习选项,可以在训练数据有限的情况下验证模型的准确性。训练控制可帮助您探索模型并在模型训练期间与它们交互。ML Compute 能利用 GPU 来加速 Mac 上的训练。有关更多信息,请参阅 Core MLCreate MLML Compute (英文) 开发者文档。

计算机视觉

macOS 11 中,计算机视觉框架增加了多个 API,可实现视频中的轨迹检测、图像和视频中手和身体的姿态预测,以及用来追踪图像和视频中物体边缘及特征的轮廓检测,还有用于定义连续视频帧之间运动模式的光流处理。要进一步了解这些功能,请参阅计算机视觉 (英文) 框架文档。特别值得一读的是“构建功能丰富的运动分析 App (英文)”,可帮助您通过示例 app 了解这些功能是如何整合在一起的。

自然语言

自然语言框架新增了一个 API,可提供语句嵌入功能,用于为任意字符串创建矢量表示;支持文字标记功能,用于训练为特定领域定制的自然语言分类模型;还可提供置信度分数,用于对框架预测进行评分。有关更多信息,请参阅自然语言 (英文) 框架文档。

SwiftUI

SwiftUI 提供了一系列新的内置视图,包括进度指示器和文本编辑器。它还支持新的视图布局,如网格和大纲。网格和全新惰性版本的堆叠 (Stack) 只在需要时加载项目。

Xcode 12 开始,您现在可以使用 SwiftUI 来定义整个 app 的结构和行为。您可以借助各种场景来编写 app,利用场景包含的视图层次结构定义 app 的用户界面。您可以在您的所有 app 中添加菜单命令、处理生命周期事件、调用系统操作,以及管理储存空间。通过将 WidgetKit 整合到 app 中,您还可以创建小组件,让用户可以直接在 iOS 主屏幕上或 macOS 通知中心里快速访问重要的内容。有关更多信息,请参阅“App 结构和行为 (英文)”。

Safari 浏览器网页扩展

用户可以通过添加扩展来自定 Safari 浏览器的新功能和特性。您现在可以利用 Safari 浏览器内的 Safari 浏览器网页扩展 (英文) 并使用迁移工具,轻松地将其他浏览器中的常用扩展迁移到 Safari 浏览器。Safari 浏览器扩展还为用户提供了隐私控制,他们可以决定哪些站点能够使用扩展,并且可以为这些站点授予只有一次、为期一天或始终可用的访问权限。Mac App Store 的全新“扩展”类别、编辑选荐和热门榜单中都着重介绍了 Safari 浏览器扩展。

App 内购买项目的家人共享

家人共享是用户与所有家庭成员分享订阅内容、购买项目等内容的简单方式。在 macOS 11 中,您可以选择针对用户的 App 内购买项目和订阅内容提供家人共享,这样用户的全家人都可以获享额外的益处。请参阅 SKProduct (英文)SKPaymentTransactionObserver (英文),以了解有关这些全新 API 的信息。

统一类型标识符

使用新的统一类型标识符 (英文) 框架可以描述用于传输的文件格式和内存数据,如粘贴板;此外还可以标识资源,如目录、宗卷和数据包。

辅助功能

利用全新辅助功能 (英文) 框架,您的 app 可以根据具体情境,以动态方式向用户提供一小部分无障碍内容。

文件压缩

使用新的 Apple Archive (英文) 框架可以在 macOS 中对目录、文件和数据执行快速、多线程的无损压缩。

屏幕使用时间

macOS 11 内置屏幕使用时间 API,用于共享和管理网页使用数据,以及观察父母或监护人做出的更改。有关更多详细信息,请参阅屏幕使用时间 (英文) 框架文档。