当项目使用 async/await 并针对 iOS 14 时,使用 Xcode 13.3 -13.4 启用位码

我的应用程序使用并发框架并以 iOS 14 为目标,并且在 Build Settings 中启用 Bitcode 的所有切换都设置为 YES,编译后显示以下警告(使用 SPM 进行依赖项):

ld:警告:所有位码都将被删除,因为“/Build/Products/Debug-iphonesimulator/FirebaseFirestore.o”是在没有位码的情况下构建的。您必须在启用位码的情况下重建它(Xcode 设置 ENABLE_BITCODE),从供应商处获取更新的库,或禁用此目标的位码。

Xcode 13.3 发行说明:

已知问题: 当应用程序面向 iOS 13.0 – iOS 14.7、watchOS 6.0 – watchOS 7.6 或 tvOS 13.0 – 14.7 时,从包含位码的存档导出使用 Swift 并发功能的应用程序可能会失败。 (89271047) 解决方法:从存档导出应用程序时取消选中从位码重建框或禁用位码(仅限 iOS)。

在我看来,由于并发功能的向后兼容性,Xcode 强制禁用了位码。 有没有办法使用 async/await 并启用位码?(Xcode 13.4 没有解决这个问题)

stack overflow Enable bitcode with Xcode 13.3 -13.4 when project uses async/await and targets iOS 14
原文答案

答案:

作者头像

今天我将 AdServices.framework 添加到 Link Binary With Libraries Build Phase,现在我可以在归档时打开 Include Bitcode 切换。所以问题一定不在于 Xcode

相关问题