Firebase 可选崩溃未正确显示

Posted

技术标签:

【中文标题】Firebase 可选崩溃未正确显示【英文标题】:Firebase optional crashes not showing up correctly 【发布时间】:2020-09-16 19:24:28 【问题描述】:

我在实时应用上使用 Firebase 崩溃报告,只有 1 个版本发布到应用商店。我的控制台显示了upload-dsym 消息。我是通过终端脚本手动上传的,

/path/to/pods/directory/FirebaseCrashlytics/upload-symbols
 -gsp /path/to/GoogleService-Info.plist -p ios /path/to/dSYMs

它向我显示符号已正确上传的消息。

现在是问题部分,在上传 dsym 文件之前有 两种 类型的崩溃,一种显示 dsym 是必需的,而其他几种显示它们是可选的。尽管有许多可选的崩溃,但它们都没有出现在任何统计数据中(即,如果它有助于所有崩溃的 UUID 不同,则一直显示只有 1 个用户发生了 1 次崩溃)。

将 dsym 上传到控制台后,所需的崩溃在问题列表中正常显示,但可选的崩溃仍在丢失的 dsym 中。

那么两个问题:

    为什么我的仪表板内的统计信息中没有显示可选的崩溃? 即使在上传 dsysm 之后(我知道它是正确的,因为所需状态的崩溃在问题列表中),可选的崩溃没有正确显示?

【问题讨论】:

【参考方案1】:

This SO answer 应该可以帮助您。为了回答您的问题,可选的 dSYM 不会像所需的 dSYM 那样映射到整个崩溃。由于缺少一些可选的 dSYM,您可能会在一些堆栈帧中看到一些具有 (Missing) 的崩溃。必需的 dSYM 是唯一可以阻止崩溃被处理并完全在您的控制台上结束的 dSYM。

【讨论】:

但这仍然不能解释为什么它们没有出现在统计数据中? 你能扩展一下吗?我不确定你所说的统计是什么意思。 通过统计,我的意思是 X 数量的用户面临 Y 数量的崩溃。 可选的 dSYM 通常并不代表整个崩溃。它们通常是您链接到应用程序中的一些框架/库,因此来自可选 dSYM 的一些堆栈帧可能会出现在一些堆栈跟踪中。如果您在崩溃报告中看到 Missing 帧,那是因为我们没有这些帧所需的可选 dSYM 之一。 哦,我明白了,我认为可选只是意味着缺少堆栈跟踪。但仍会考虑计数。

以上是关于Firebase 可选崩溃未正确显示的主要内容,如果未能解决你的问题,请参考以下文章

Firebase 未报告与 OkHttp 相关的崩溃

iOS 10 Firebase 通知未在后台显示

Firebase Cloud Messaging 通知未显示在 iOS 设备上(前台和后台)

XCode 未找到 Firebase v2.1.2(未找到框架错误)

react-native-firebase crashlytics 未显示在 firebase 仪表板上

Flutter:Flutter Firebase Crashlytics 未针对 iOS 显示