获取我们在 Firebase 峰会上发布的所有信息,了解 Firebase 可如何帮助您加快应用开发速度并满怀信心地运行应用。了解详情

自定义您的 Firebase Crashlytics 崩溃报告

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

本指南介绍了如何使用 Firebase Crashlytics SDK 自定义崩溃报告。默认情况下,Crashlytics 会自动为您应用的所有用户收集崩溃报告(您可以关闭自动崩溃报告并为您的用户启用选择加入报告)。 Crashlytics 提供了四种开箱即用的日志记录机制:自定义键自定义日志用户标识符捕获的异常

添加自定义键

自定义键可帮助您了解导致崩溃的应用程序的特定状态。您可以将任意键/值对与您的崩溃报告相关联,然后使用自定义键在 Firebase 控制台中搜索和过滤崩溃报告。

  • Crashlytics 仪表板中,您可以搜索与自定义键匹配的问题。
  • 当您在控制台中查看特定问题时,您可以查看每个事件的关联自定义键(子选项卡),甚至可以按自定义键过滤事件(页面顶部的过滤器菜单)。

多次调用时,现有键的新值将更新该值,并且在记录崩溃时仅捕获最新值。

Crashlytics.SetCustomKey(string key, string value);

添加自定义日志消息

记录的消息与您的崩溃数据相关联,并且在查看特定崩溃时会在 Firebase Crashlytics 仪表板中可见。

Crashlytics.Log(string message);

设置用户标识符

您可以使用 ID 号、令牌或散列值来唯一标识您的应用程序的最终用户,而无需披露或传输他们的任何个人信息。您还可以通过将其设置为空字符串来清除该值。查看特定崩溃时,此值会显示在 Firebase Crashlytics 仪表板中。

Crashlytics.SetUserId(string identifier);

报告非致命异常

使用以下方法在 C# 中记录自定义异常:

Crashlytics.LogException(Exception ex);

自定义异常可以包含在您应用的 try/catch 块中:

try {
    myMethodThatThrows();
} catch (Exception e) {
   Crashlytics.LogException(e);
   // handle your exception here!
}

启用选择性报告

默认情况下,Crashlytics 会自动为您应用的所有用户收集崩溃报告。通过让用户选择报告崩溃,您可以让用户更好地控制他们发送的数据。

要禁用自动收集并仅为选定用户初始化 Crashlytics,请在运行时调用 Crashlytics 数据收集覆盖。覆盖值在您的应用程序启动后一直存在,因此 Crashlytics 可以自动收集报告。要选择退出自动崩溃报告,请将false作为覆盖值传递。设置为false时,新值直到下一次运行应用程序才会应用。

Crashlytics.IsCrashlyticsCollectionEnabled = true

管理 Crash Insights 数据

Crash Insights 通过将您的匿名堆栈跟踪与来自其他 Firebase 应用的跟踪进行比较,并让您知道您的问题是否属于更大趋势的一部分,从而帮助您解决问题。对于许多问题,Crash Insights 甚至提供资源来帮助您调试崩溃。

Crash Insights 使用汇总的崩溃数据来识别常见的稳定性趋势。如果您不想共享您的应用数据,您可以从Firebase 控制台中 Crashlytics 问题列表顶部的崩溃洞察菜单中选择退出崩溃洞察。