新的 Use Compiler to Extract Swift Strings 构建设置调用 Swift 编译器从 Text()、String(localized:)、AttributedString(localized:) 初始值设定项、SwiftUI 的 LocalizedStringKey 和 Foundation 的 StringLocalizationKey 中准确地提取字符串插值和字符串文字;
Metal Debugger 现在支持 Selective Shader Debugging,它允许您限制大型 Compute 着色器的调试范围,这导致更快的着色器调试器会话创建和迭代时间;
Metal Debugger 中的新捕获控件可让您精确控制来决定捕获 Metal 工作负载的哪个部分,以及捕获多个帧或范围的选项;
Metal Debugger 现在支持导入 metallibsym 文件,这使您可以在应用程序中进行 Metal 着色器调试和分析,而无需在您的 metallib 中嵌入着色器源;
Metal Debugger 中的 Apple GPU 可以使用 GPU 时间线,使用此时间线可视化和检查 Metal GPU 命令的并行执行以及一组精选的 GPU 计数器;
Metal 管道状态对象现在在 Metal Debugger 中表示为资源,包括一个全新的 Metal Pipeline States 和 Metal Libraries 查看器,以及 Metal Debugger 的 Memory Viewer 中的 Metal Pipeline 状态的 GPU 内存;
Instruments 的 Metal System Trace、Xcode 中的 Metal Debugger 以及全新的 Condition Inducer 中提供了新的一致 GPU 性能状态分析工作流;
现在可以在 Metal System Trace 模板的记录选项中覆盖 GPU 性能状态;
Metal Debugger 现在支持 Metal 光线追踪以及新的高级加速结构查看器;
Metal 应用程序录制设置现在特定于正在配置的设备。
十七、Organizer
Xcode 现在可以近乎实时地提供崩溃报告,数据保留时间更长;
Xcode 现在提供具有更多过滤功能和更多统计信息的崩溃报告;
现在可以通过 URL 共享崩溃报告;
Xcode 现在会显示您的崩溃问题的 TestFlight 反馈,以便更好地了解问题所在;
现在可以根据任何特定的历史应用程序版本、任何特定的历史应用程序版本、产品类型(如 App Clip、应用程序扩展或主应用程序)以及 TestFlight 或 App Store 的发布历史记录过滤 Energy 报告列表;
XCTExpectFailure 函数现在包括用于自定义某些选项的 Swift 重载,而无需创建 XCTExpectedFailure.Options 实例;
XCTest 现在能够在 watchOS UI 测试中合成 Digital Crown 旋转;
XCTest 现在包括 setUp 和 tearDown 实例方法的异步抛出重载;
测试现在可以从任何线程调用 XCTestCase.expectation(description:),以及其他返回 XCTestExpectation 的 XCTestCase API,这消除了之前测试从主线程调用这些 API 的要求,并允许使用它们的现有测试采用异步,而无需 @MainActor。
二十八、App Store
StoreKit 2 引入了一个现代的基于 Swift 的 API,它利用了新的语言功能,如 Swift 并发性。使用这个 API 加载产品信息、在您的商店中显示应用内购买、允许客户进行购买、管理对内容和订阅的访问以及接收由 App Store 以 JSON Web 签名 (JWS) 格式签署的交易信息。