Firebase Crashlytics 报告

Firebase Crashlytics reports

本期包含 "new Firebase Crashlytics user"

的服务器问题

First of all till not long ago, I've used Fabric for crash reports. after migrating Fabric to Firebase Crashlytics, a few issues raised.

1) 'Crash-free users' 从 FabricFirebase Crashlytics 的差异,而 Fabric 显示 99% 以上的无崩溃用户,FB-Crashlytics 显示大约 60% 的无崩溃用户。为什么结果不一样?

2) FB Crashlytics NOT 报告导致应用程序崩溃的具体 object/field 名称。它也没有报告它发生在哪一行。它只报告方法名称和异常(类似“致命异常:kotlin.KotlinNullPointerException”的 smtng,而没有提及引用的名称

P.S Already added to proguard the following rules:

-keep public class * extends java.lang.Exception

-keep class com.google.firebase.crashlytics.** { *; }
-dontwarn com.google.firebase.crashlytics.**```
  1. 无崩溃用户指标将有所不同,因为 Fabric 依赖于 Fabric Answers,而 Firebase 依赖于 Google Analytics SDK。使用 Firebase,需要一个 user_engagement 事件来定义 activity。当应用程序进入前台并触发 session_start 事件时,会触发 user_engagement 事件。 Analytics 将多个应用程序 foregrounds/backgrounds 计为同一会话的一部分,只要它们彼此相隔 30 分钟以内,而 Fabric Answers 则为 30 秒。因此,与 Google Analytics 相比,Fabric 计算的会话和用户数量更多,因为在正式捕获和计算 session/active 用户之前,它要求应用程序在前台和后台的时间更少。这会导致高容量应用程序中的小差异和低容量应用程序中可能更大的差异,每天可能只有几个用户和会话。

  2. Firebase 应报告行号和 object/field。如果您使用的是 Kotlin,您可以尝试这样的测试崩溃吗? (https://firebase.google.com/docs/crashlytics/test-implementation?platform=android#force_a_crash_to_test_your_implementation)