此页面提供故障排除帮助以及有关使用 Crashlytics 的常见问题解答。如果您找不到所需内容或需要其他帮助,请联系Firebase 支持。
一般故障排除/常见问题解答
如果您没有看到无崩溃的用户、面包屑日志和/或速度警报,我们建议您检查您的应用程序的 Google Analytics 配置。
确保您已在 Firebase 项目中启用 Google Analytics 。
确保在 Firebase 控制台的集成> Google Analytics页面中为 Google Analytics 启用了数据共享。请注意,数据共享设置显示在 Firebase 控制台中,但在 Google Analytics(分析)控制台中进行管理。
除了 Firebase Crashlytics SDK,请确保您已将 Firebase SDK for Google Analytics 添加到您的应用 ( iOS+ | Android )。
确保您为所有 Firebase SDK ( iOS+ | Android ) 使用最新版本。
尤其要检查您是否至少使用了以下版本的 Firebase SDK for Google Analytics: iOS+ — v6.3.1+(v8.9.0+ 用于 macOS 和 tvOS)| Android — v17.2.3+(BoM v24.7.1+) 。
无崩溃值表示与您的应用互动但在特定时间段内未发生崩溃的用户百分比。
这是计算无崩溃用户百分比的公式。其输入值由 Google Analytics 提供。
1 - ( CRASHED_USERS / ALL_USERS )
当发生崩溃时,Google Analytics 会发送一个
app_exception
事件类型, CRASHED_USERS表示与该事件类型关联的用户数。ALL_USERS表示在您从 Crashlytics 仪表板右上角的下拉菜单中选择的时间段内与您的应用互动的用户总数。
您可以在 Analytics 仪表板中查看应用程序的app_exception
事件数。请注意,由于崩溃处理方式的细微差别,分析仪表板中显示的app_exception
数字有时可能与无崩溃用户计算中使用的数字不同。
无崩溃用户百分比是一段时间内的聚合,而不是平均值。
例如,假设您的应用程序有三个用户;我们称他们为用户 A、用户 B 和用户 C。下表显示了每天与您的应用互动的用户以及当天发生崩溃的用户:
周一 | 周二 | 周三 | |
---|---|---|---|
与您的应用互动的用户 | 甲、乙、丙 | 甲、乙、丙 | 甲,乙 |
发生崩溃的用户 | C | 乙 | 一个 |
周三,您的无崩溃用户百分比为 50%(每 2 位用户中就有 1 位没有崩溃)。
您的两位用户在周三使用了您的应用,但其中只有一位(用户 B)没有崩溃。在过去 2 天中,您的无崩溃用户百分比为 33.3%(三分之一的用户无崩溃)。
在过去两天中,您的三位用户与您的应用进行了互动,但其中只有一位(用户 C)没有崩溃。在过去 3 天中,您的无崩溃用户百分比为 0%(3 名用户中有 0 名无崩溃)。
您的三位用户在过去三天内与您的应用进行了互动,但其中零位没有发生崩溃。
集成
如果您的项目将 Crashlytics 与 Google 移动广告 SDK 一起使用,则崩溃报告器可能会在注册异常处理程序时进行干扰。要解决此问题,请通过调用disableSDKCrashReporting
关闭移动广告 SDK 中的崩溃报告。
将 Crashlytics 链接到 BigQuery 后,无论您的 Firebase 项目位于何处,您创建的新数据集都会自动位于美国。
平台支持
回归问题
当您之前关闭问题时,问题已经回归,但 Crashlytics 会收到一份新报告,表明该问题再次发生。 Crashlytics 会自动重新打开这些回归问题,以便您可以根据自己的应用程序解决这些问题。
下面是一个示例场景,它解释了 Crashlytics 如何将问题归类为回归:
- Crashlytics 有史以来第一次收到有关 Crash "A" 的崩溃报告。 Crashlytics 为该崩溃打开了相应的问题(问题“A”)。
- 您快速修复此错误,关闭问题“A”,然后发布您的应用程序的新版本。
- 在您关闭问题后,Crashlytics 会收到关于问题“A”的另一份报告。
- 如果报告来自 Crashlytics 在您关闭问题时知道的应用程序版本(意味着该版本已发送任何崩溃的崩溃报告),则 Crashlytics 不会认为该问题已回归。该问题将保持关闭。
- 如果报告来自您关闭问题时 Crashlytics不知道的应用程序版本(意味着该版本根本没有针对任何崩溃发送任何崩溃报告),则 Crashlytics 会认为该问题已退化,并将重新打开该问题.
当问题回归时,我们会发送回归检测警报并向问题添加回归信号,让您知道 Crashlytics 已重新打开该问题。如果您不希望由于我们的回归算法而重新打开某个问题,请“静音”该问题而不是关闭它。
如果报告来自在您关闭问题时从未发送过任何崩溃报告的旧应用程序版本,则 Crashlytics 会认为该问题已退化,并将重新打开该问题。
这种情况可能发生在以下情况:您已经修复了一个错误并发布了应用程序的新版本,但您仍然有用户使用旧版本而没有修复错误。如果偶然地,当您关闭问题时,其中一个旧版本根本没有发送任何崩溃报告,并且这些用户开始遇到错误,那么这些崩溃报告将触发回归问题。
如果您不希望由于我们的回归算法而重新打开某个问题,请“静音”该问题而不是关闭它。