iOS 的 Firebase 崩溃报告不会发送崩溃,尽管初始化成功

Firebase crash reporting for iOS doesn't send crashes despite successful init

我向我的 iOS 项目添加了 firebase 崩溃报告(添加了 pod,添加了构建阶段脚本,向项目添加了 json,...)。 当我 运行 我的应用程序时,我在控制台中看到:

Firebase Crash Reporting: Successfully enabled

为了测试,我在代码中的 FIRApp.configure() 代码之后插入了 fatalError()(如此处建议:https://firebase.google.com/docs/crash/ios#create_your_first_error)。

在我下次启动应用程序(不会崩溃)时不会发送任何崩溃报告。我在 xcode 控制台中看不到任何内容,在我的 Web 控制台中也看不到任何内容。

不是立竿见影的解决方案,但一些诊断技巧可能有助于定位问题:

  • 当您在模拟器或连接的设备中生成崩溃时,请确保调试器处于 DISABLED 状态,否则调试器将在 FCR 之前捕获崩溃。在 Xcode 中启动应用程序 (⌘R),在 Xcode 中停止调试器 (⌘.),然后在模拟器或设备上手动重新启动应用程序。
  • 如果您正在使用模拟器并按照上述说明进行操作,那么您应该会看到执行命令 find ~/Library/Developer/CoreSimulator -path '*/FCRDumps/*.dmp' -ls 时生成的原始故障转储(请注意,还将显示来自其他测试应用程序的未处理故障) ).
  • 如果您看到一个或多个具有正确时间戳的转储文件,那么您应该会在应用下次启动时成功上传。删除 fatalError() 行,然后重建并重新启动。该容器中的 .dmp 文件应该很快就会消失,取而代之的是 .crash 文件(使用 find ~/Library/Developer/CoreSimulator -path '*/FCRCrashQueue/*.crash' -ls 找到它们)。崩溃文件上传成功后将逐一删除