苹果今日推出了全新的工具、技术、API,帮助开发者创造更丰富的用户体验。锁定屏幕上的小组件让开发者能以新的方式呈现 app 中的重点信息,Apple 全平台上的其他新款 API 也将助力开发者打造出更多独特功能。WeatherKit 让开发者能够将 Apple 天气 app 的预报数据直接整合至自己的 app 内,内置在 Xcode 中的 Xcode Cloud 这项由 Apple 持续打磨的集成与交付服务现对所有 Apple Developer Program 会员开放,帮助他们更快速地开发出更高质量的 app。Metal 3 让游戏开发者能够依托更高的性能开发出精美绝伦的画面,借助于 Swift、SwiftUI 和 Xcode 的改进,为 Apple 平台开发 app 的过程将会变得更加随心所欲。SKAdNetwork 的改进则能让广告联盟和开发者既能更好地评估广告效果,又能保护用户的隐私不受侵犯。

Xcode Cloud 正式推出

包含一系列订阅计划以满足开发者需求的 Xcode Cloud 已正式推出。在 2023 年 12 月之前,所有 Apple Developer Program 会员都可以每月免费使用 25 小时。订阅计划最多每月 1,000 小时。

内置于 Xcode 的 Xcode Cloud 是一项不断完善的集成与交付云服务,专为 Apple 开发者而设计。通过自动在云端构建 app,它能释放开发者的 Mac 以完成其他任务,让各种规模的开发团队都能更高效地构建、测试、交付高质量 app。此外,通过云端的并行测试,开发者可以在当前每台 Apple 设备上进行模拟版本测试、轻松为内部测试进行部署,或通过 TestFlight 交付给 Beta 版测试者。

Xcode 14 的提升

Xcode 14 具有全新的增强功能,以进一步提高开发者的生产力。得益于更强大的并行编译能力,项目构建速度提升至高可达 25%。另外,Xcode 应用程序下载包体积减小了 30%,还有 watchOS 和 tvOS 的模拟器运行环境可供下载。全新的多平台 Target 打造了一个可横跨 iOS、iPadOS、macOS 和 tvOS 使用的 SwiftUI 界面。开发者的代码现在更容易维护了,同时支持高度自定义,以充分发挥各平台的独特能力。在新版 Xcode 中,SwiftUI 实时预览默认是交互式的,所以一切的改动都会立即生效。开发者现在可以在不写任何代码的情况下创建每个预览的变体,调整配色方案、文本大小、设备方向,或辅助功能模式。Assets Catalog 中全新的 App Icon 功能让开发者能仅提供一个图标尺寸供所有平台使用,Xcode 会自动生成相应 app 所需的素材。Xcode 增强了语言和编辑功能,代码自动补全更加智能,而额外的动态代码段让开发者能更快地写出他们想要的代码。

全新游戏编程功能

Metal 3 是 Apple 图形框架的最新版本,现提供一系列全新功能,让游戏开发者能够充分发挥 Apple 芯片的强大性能,带来更出色的游戏表现。MetalFX Upscaling 使用计算量更小的帧,然后应用高质量空间放大和时间性抗锯齿,让开发者能快速渲染复杂场景。这样处理带来的结果是游戏能以更高的性能运行,响应更灵敏,画面表现令人惊叹。新的 Fast Resource Loading API 则在内存与图形处理器之间建立了更直接的通道,能够大幅缩短等待时间,让游戏可以轻松呈现高质量纹理与几何图形造就的广阔世界,带来逼真的沉浸式体验。

集成 Game Center 的游戏开发者现在可以在 Dashboard 中添加 Activity 视图,让用户能够看到他们的朋友正在玩的游戏以及最高分数。此外,对同播共享的支持让用户能更轻松地实时同玩。

Swift 与 SwiftUI 的提升

Swift 和 SwiftUI 提供了构建 app 的绝佳方式,现在带来了简化开发流程的全新功能。

Swift 增加了强大的字符串处理能力,内置了新的正则表达式字面量支持,让开发者能快速检查正则表达式的正确性,并用更少的代码提取信息。Swift Package Manager 现提供全新的 Package Plugin,开发者能更轻松地在他们的项目中运行自定义命令,甚至上传并与他人分享这些命令。

SwiftUI 是 Apple 的新一代用户界面框架,具有增强的导航 API,让开发者能更轻松地控制 app 的视图跳转方式。有了 Custom Layouts,开发者可以突破常见 app 布局的限制,创建最适合他们 app 设计的布局版本。另外,Swift Charts 可以根据几乎所有的图表需求进行自定义,因此开发者可以更好地在 app 中将数据可视化。

WeatherKit 登场

WeatherKit 让开发者能将 Apple 天气 app 采用的高质量全球天气预报数据直接整合至自己的 app 内。利用高精度的气象模型,结合机器学习和预测算法,Apple 天气 app 能提供当前天气状况、未来 10 天内每小时天气预报、每日天气预报和历史天气数据。开发者可以通过 Swift 和 REST 的原生 API 调用 WeatherKit,其中 Apple Developer Program 会员每月享有的 API 调用次数可达 50 万次。从今年秋季开始,需要更多调用次数的开发者将可在 Apple Developer app 中直接购买额外的服务层级。

注重隐私的广告评估方法

SKAdNetwork API 现在提供全新功能,旨在帮助广告联盟和广告商更好地评估广告在 app 或网页上的表现,同时保证用户的隐私不被侵犯。层级化的来源 ID 能助力开发者优化广告活动,而不增加对个人造成的跨应用追踪的风险。SKAdNetwork 还支持层级化转化值,使开发者能够收到更多关于小型广告活动的转化信息,开发者可以通过在特定时间窗内设定多种转化指标,来更好地计算广告支出的回报。

为打造更强大 app 而推出的全新 API

Apple 开发者现在可以使用比以往更多的 API 来打造用户喜爱的 app 体验。可供开发者使用的一些最新的 API 包括:

  • 锁定屏幕上的小组件:iOS 16 支持在锁定屏幕上添加小组件,开发者现在可以无缝复用锁定屏幕上的小组件与 Apple Watch 上复杂功能的代码,因为它们都基于全新的 WidgetKit API。
  • 实况文本:开发者现在可以向用户提供从他们的 app 里的照片、视频和实时相机画面中直接抓取文本的能力。实时文本完全在设备端处理,以保护用户隐私并提升性能。
  • 协作工具:内置于信息 app 的丰富协作功能现在对第三方 app 开放。开发者还可以在他们 app 中全新的“与您共享”部分突出显示用户在信息 app 中共享的内容,使接收者在未来能更容易回溯这些内容。
  • 通行密钥:通行密钥是新一代的凭证,它更安全、更易用,无论在网页上还是 app 内都一样使用简单。
  • MapKit:第三方 app 现在可以包括细节丰富的 3D 城市体验和“四处看看”,提供更丰富的用户体验。全新的 Apple Maps Server API 提供更快、更容易的地图集成。
  • 专注模式过滤条件:开发者可以根据用户当前的专注模式来调整 app 的内容。
  • 自动快捷指令:开发者现在可以使用 App Intents 来让用户通过 Siri 和快捷指令使用他们的 app,无需用户进行设置。
  • watchOS 9:VoIP 通话现在支持 CallKit;共享表单让用户能将他们最喜欢的 app 中的内容共享到 iMessage 和其他主流信息 app;第三方 app 现在可以通过照片选取器访问照片 app,甚至能够集成 Apple TV。
  • RoomPlan:在 ARKit 的驱动下,开发者现在可以利用 iPhone 和 iPad 上的激光雷达扫描仪创建房间的 3D 平面图,采集尺寸、家具类型等特征数据。
  • 实时活动:借助 WidgetKit,开发者可以在锁定屏幕上向用户显示特定活动和事件的最新信息。