使用 Crashlytics 构建 Mac Catalyst

Posted

技术标签:

【中文标题】使用 Crashlytics 构建 Mac Catalyst【英文标题】:Building for Mac Catalyst with Crashlytics 【发布时间】:2020-03-03 08:58:33 【问题描述】:

是否有人使用 Crashlytics 能够为 Mac Catalyst 编译他们的 ios 应用程序?

我尝试为 Catalyst 构建我们的一款 iOS 应用,但出现以下错误:

ld: in /Users/foo/bar/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics(CLSInternalReport.o), building for Mac Catalyst, but linking in object file built for iOS Simulator, file '/Users/foo/bar/Pods/Crashlytics/iOS/Crashlytics.framework/Crashlytics' for architecture x86_64

我已使用 Cocoapods 更新到最新版本的 Crashlytics。由于 CL 已经在 macOS 上运行,我认为可以使用 Catalyst 链接到正确的 x86 库。

【问题讨论】:

【参考方案1】:

以前,Mac Catalyst 不支持 Firebase Crashlytics。在新版本的 Firebase Crashlytics (6.15.0) 中,他们提供了支持。

【讨论】:

【参考方案2】:

这是我目前的解决方法。它不允许我将 Crashlytics 与 Catalyst 一起使用,但我可以继续创建 Catalyst 和 iOS 版本。

    克隆您常用的构建目标。 在新目标上启用 Catalyst。 在 Podfile 中为新目标添加一个部分。 在新目标中包括所有必需的 pod除了 Fabric 和 Crashlytics。 pod install 在源代码中,使用#if canImport(Crashlytics)有条件地构建依赖Crashlytics的代码 继续从旧目标构建 iOS 应用程序。使用 Catalyst 构建的新目标。

【讨论】:

实际上我复制了构建目标。根据你的第一步。如何执行您的第 2 步到第 7 步。我不明白。我也面临同样的问题

以上是关于使用 Crashlytics 构建 Mac Catalyst的主要内容,如果未能解决你的问题,请参考以下文章

使用催化剂移植到 mac 时排除 pod

没有方法签名:com.crashlytics.tools.gradle.CrashlyticsPlugin On Mac [关闭]

Crashlytics:使用构建服务器发布并上传 Android 应用程序的分发

Crashlytics - 如何删除构建/版本?

在构建服务器上使用 APKTool 的 Crashlytics

Crashlytics 线程仅在使用 Xcode 11 构建的 iOS 13 上崩溃