[英]SwiftUI previews not working when using Firebase/Analytics pod
似乎在将 Xcode 12 更新到 beta 5 后,SwiftUI 预览在使用 Firebase/Analytics pod 时不再起作用。 预览失败并出现错误:
linker command failed with exit code 1 (use -v to see invocation)
----------------------------------------
SchemeBuildError: Failed to build the scheme "Boo"
linker command failed with exit code 1 (use -v to see invocation)
Link Boo (arm64):
ld: in /Users/../Boo/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector(FIRAnalyticsConnector_e321ed8e3db06efc9803f6c008e67a34.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/.../Boo/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
任何建议如何解决这个问题?
以下解决方法(感谢 Apple Developer 论坛上的用户)对我有用:
对于具有 Firebase Analytics 的任何目标,将“arm64”添加到调试方案的排除架构中。
如果您需要调试到实际的 iOS 设备,这显然会给您带来问题。 但是当您需要在设备上进行测试时,您可以将其移除。
Xcode 12,测试版 6
Xcode 12 中删除了有效架构构建设置。如果您在此构建设置中有值,则它们会导致问题,需要将其删除。
我能够通过将 VALID_ARCHS 构建设置重新添加为用户定义的构建设置(没有值),运行项目(失败),然后删除 VALID_ARCHS 构建设置来“清除”它。
我的架构构建设置是标准架构。
在didFinishLaunchingWithOptions
开始时添加此检查,并且预览模式将忽略外部模块
if ProcessInfo.processInfo.environment["XCODE_RUNNING_FOR_PREVIEWS"] == "1" {
return true
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.