Firebase crashlytics不报告崩溃

时间:2019-01-28 12:09:46

标签: ios firebase crashlytics

我正在从Fabric升级到Firebase crashlytics。我已将Firebase和Fabric / Crashlytics窗格添加到我的项目中,添加了.plist等。一切似乎都工作正常,只是没有报告崩溃。我正在使用assert(! "crashing on purpose to test crashlytics");导致崩溃,因为我看到其他人提到[[Crashlytics sharedInstance] crash]不适用于他们。

有趣的是,生成崩溃后,我使用的内部版本号的“无崩溃用户”降至0%,但崩溃报告为0。“ dSYMs”标签未列出版本号。

enter image description here

以下是当将-FIRDebugEnabled作为参数传递时,调试视图上发生的崩溃: enter image description here

有什么建议吗?

3 个答案:

答案 0 :(得分:0)

请确保您已安装最新的Pod,如Firebase文档所述,您应该具有此Pod版本

pod 'Fabric', '~> 1.9.0'
pod 'Crashlytics', '~> 3.12.0'

以下是firebase crashlitycs文档的链接

答案 1 :(得分:0)

从Fabric迁移到Firebase Crashlytics时,我遇到了类似的问题。您不应遵循Firebase网站上的说明。遵守@Ashvini提到的“面料说明”。我假设您在迁移到Firebase之前已经使Crashlytics正常工作。我测试了这种方法,它对我有用。 这是一个痛苦,因为新旧项目将具有不同的Crashlytics实现。

答案 2 :(得分:-1)

  • 安装后,请确保使用以下代码行在 AppDelegate 文件中初始化 Fabric SDK:

    对于Objective-C: [Fabric with:@[[Crashlytics class]]];

    要迅速: Fabric.with([Crashlytics.self])

  • 此后,通过调用 Crashlytics.sharedInstance().crash() (对于Swift)和 [[Crashlytics sharedInstance] crash] (对于Objective-C)来迫使您的应用崩溃。通过在您的ViewController或现有操作中以编程方式添加任何按钮来调用此方法。

  • 如果在启动时附加了调试器,Crashlytics不会捕获崩溃,因此,要查看崩溃的实际效果,您需要执行以下步骤:

    1. 从Xcode运行您的应用,以将其安装在模拟器或设备上
    2. 按下Xcode中的“停止”按钮以退出它
    3. 从主屏幕启动您的应用,以在没有调试器的情况下运行它
    4. 按下“崩溃”按钮触发崩溃
    5. 再次从Xcode运行该应用程序,以便将记录的崩溃信息传递给Crashlytics。
  • 几分钟后,您应该会看到崩溃显示在Fabric仪表板上。

  • 如果未在仪表板中发现崩溃,则请在Build Settings中再次检查Debug和Release的调试信息格式均为“带有dSYM文件的DWARF”。

  • 确保崩溃后启动该应用,以便可以上传崩溃。

  • 如果几分钟后仍看不到崩溃,请再次运行您的应用以重试崩溃交付。

  • 您可以参考此链接[https://fabric.io/kits/ios/crashlytics/install]