Android Firebase崩溃不会在第三方库(或* .aar)中发送崩溃报告

时间:2020-05-22 11:26:58

标签: android firebase crashlytics google-fabric

我发现我没有收到崩溃问题,崩溃问题已作为依赖项或类似* .aar的形式注册在项目的第三方库中。我的意思是,例如:

Art Number
A    3
B    2
C    2

我在项目中开发了一些库,并将其作为依赖项附加到应用程序。我在此库中模拟了一些崩溃,但是在Firebase中没有收到任何崩溃报告。此外,我创建了使用NDK的相同库。但是我也没有任何崩溃报告。

Firebase似乎发送了仅在应用程序中检测到的崩溃,但我们不是从libs发送的。 这不是一件好事,因为以前在Fabric中,我们已经做到了。

我已遵循描述here的说明 我曾经用过:

implementation 'xxxx:2.1.1'

有人有同样的情况吗?

3 个答案:

答案 0 :(得分:3)

Firebaser在这里-

这里发生了几件事。首先,我们期望的工作原理:

  • 从库中接收Java崩溃。如果您在主应用程序流程中像平常一样初始化Crashlytics,我们希望它能够从您要导入的库/ AAR中提取崩溃。一旦编译成APK,库代码就完全是应用程序代码,Crashlytics应该能够对其进行报告。
  • 例如,如果您包括一个数学库,并且Crashlytics初始化是在诸如pod search之类的方法调用之前发生的,则该方法调用应该被捕获并用符号表示。
  • li>
  • 在库方法调用之前初始化Crashlytics是一种预期的行为,因为在Android中,只要正确配置了Firebase,Crashlytics就应该在应用程序开始时自动启动。如果您正在做任何工作来更改应用程序中的此行为,则可能是导致此问题的原因。我需要更多地了解您实际上是如何初始化Crashlytics的,因为如果您尝试在库本身中初始化Crashlytics,或者库代码本身启动了Service,这可能会导致报告问题。

什么不起作用:

    库中的
  • NDK报告。 AAR可以包含本机代码和Java代码,但是特别是应该捕获Java,即使它在库中也是如此。
  • 但是,如果您需要将本机符号文件上传到Crashlytics以便从AAR中获取有意义的堆栈跟踪,Crashlytics尚不支持该特定路径。

总体而言,您要执行的操作应与Java代码一起使用,并且要诊断问题,我们需要了解有关如何在应用程序中设置Crashlytics以及如何设置库的更多信息本身。随时提交Firebase support以及所有这些信息的支持案例。

答案 1 :(得分:0)

您可能必须启用NDK崩溃报告;参见Get Android NDK crash reports

implementation 'com.google.firebase:firebase-crashlytics:17.0.0'
implementation 'com.google.firebase:firebase-crashlytics-ndk:17.0.0'

答案 2 :(得分:0)

我在我的Android项目中使用了第三方NDK库并创建了崩溃,但是在Firebase网站上没有看到任何崩溃报告,但奇怪的是,该站点上有JAVA崩溃。 我已经检查了firebase SDK每个步骤的配置,并且确认没有错误。我想知道问题是什么,Firebase Crashlytics不支持第三方NDK故障报告吗?