我有一个为所有 iOS 设备和硅 Mac 操作系统开发的 SwiftUI 应用程序。
我为 iOS 设备添加了 ActivityKit Widget,效果很好。但是当我提交到appStore时,我收到以下错误:
ITMS-90863:具有 Apple 芯片支持问题的 Mac - 该应用程序链接 macOS 中不存在的库:
/系统/库/框架/ActivityKit.framework/ActivityKit
我不想取消选中 Mac,因为此应用程序适用于 Mac OS 和 iOS。如何排除仅适用于 iOS 的小部件来修复此警告?
我在我的项目中解决了这个问题:
ActivityKit
和 WidgetKit
(如果它们尚不存在)Optional
进行这些更改后,我可以在 macOS 上运行 iOS 应用程序。
一个选项是将 ActivityKit 添加为可选库,如 此答案 所示。这对我不起作用 - 从 TestFlight 或 App Store 下载并打开应用程序时,该应用程序仍然在启动时挂起。
最重要的是,您可以尝试将
#if canImport(ActivityKit)
添加到引用 ActivityKit 的所有位置。它有助于暂时为您的 iOS 应用程序添加一个 Mac Catalyst
目标并尝试在本地运行该应用程序。如果这不起作用(因为它对我不起作用),您甚至可以开始使用 Mac Catalyst 版本分发独立的 macOS 应用程序。
对我来说,维护一个独立的 macOS 发行版是不值得的,所以我不得不停止支持 macOS 平台。这需要苹果解决!