Crashlytics没有从iPhone发送崩溃报告

far*_*bel 73 crash crash-reports ios crashlytics

我在我的一个iOS应用程序中设置了Crashlytics并在真实设备上安装了该应用程序.我的Crashlytics Dashboard正在显示,我已经成功添加了应用程序.但是,它不会发送崩溃报告.我的网速不是很好.但我可以通过此设备查看我的电子邮件.谁能猜到,问题出在哪里?

Sau*_*oda 76

Xcode调试器不允许Crashlytics处理崩溃报告.是的,当我第一次阅读时,这对我来说似乎很奇怪,但这是事实(来源).这就是我们从未见过崩溃报告的原因当:
- 在模拟器中
运行应用程序 - 在iDevice上运行应用程序直接构建并从调试器上运行Xcode.

要确保在测试期间报告崩溃(从Crashlytics支持站点复制):
1.启动模拟器
2.按停止
3.启动应用程序并强制崩溃
4.从模拟器重新启动应用程序
5.查看崩溃报告网页仪表板.

编辑:

添加了参考; Crashlytics还提供了一篇关于强制崩溃的快速方法的文章,以及一篇关于为什么你没有看到第一次崩溃的数据的文章.

  • 这对我有帮助.我也发现在某些情况下.除非再次打开应用程序,否则Crashlytics不会发送崩溃报告.重申:用户遇到崩溃.用户重新打开应用程序.Crashlytics发送以前的崩溃报告. (6认同)
  • 谢谢.这应该标记为正确答案:) (2认同)

Ana*_*har 61

我现在已经晚了但是工作100%

在项目构建设置中进行一些更改,如下图所示

在此输入图像描述

并按照这些说明操作.


Edd*_*man 17

任何崩溃记者无法在iOS上工作的主要原因是由于不同崩溃记者的干扰.然而,特别是Crashlytics可能会有一些特定的东西导致崩溃报告没有报告.

Xcode调试器不允许Any Crash Reporter处理崩溃报告.这是因为XCode会覆盖崩溃处理回调中的任何挂钩.这只发生在:

  • 在模拟器中运行应用程序(启用调试器)
  • 在iDevice上运行应用程序,直接构建并在Xcode上运行调试器.

要确保在测试期间报告崩溃(http://support.crashlytics.com/knowledgebase/articles/92523-why-can-ti-have-xcode-connected-):

  1. 启动模拟器
  2. 按停止
  3. 启动您的应用并强行崩溃
  4. 从模拟器重新启动应用程序
  5. 请参阅Web仪表板中的崩溃报告.

虽然它仍然是一个超级旧视频,但这里是上面步骤的视频(Crittercism的例子):https://www.youtube.com/watch?v = sU6Su3PBFH4

  • 当 Crashlytics 检测到连接的调试器时,它会自行禁用。不是因为它不起作用,而是因为它会阻止*调试器*正常工作。Crashlytics 使用与调试器本身相同的机制,如果 SDK 搞乱了正常的调试流程,那将是非常令人沮丧的。作为参考,我编写了 Crashlytics SDK 的大部分内容。 (3认同)

Fen*_*son 8

对我来说,问题是该设备已连接到我的Mac :)从这个来源:

此外,如果您的设备已连接到Mac,XCode的调试器也将介入.所以在测试之前断开设备:)


Jam*_*son 6

我们最近遇到了这个问题,我发现在删除构建脚本的过程中的某个地方.将以下内容添加回来为我们解决了问题:
./Crashlytics.framework/run <your_api_key> <build_secret>

注意:使用Cocoapods时,您需要使用以下内容而不是上述内容(来源): ./Pods/CrashlyticsFramework/Crashlytics.framework/run

添加构建脚本:

  1. 要在Xcode 6中添加运行脚本构建阶段,请在项目中选择应用程序目标,然后选择"构建阶段".
  2. 单击小的"加号"图标,然后选择"新建运行脚本构建阶段".
  3. 您现在应该在Build Phase选项的中间看到Run Script部分,如上所示.
  4. 在Run Script Build Phase的主体内部,粘贴脚本

以上引用来自Crashlytics的视觉教程,在本文中引用.

注意:我最初在Crashlytics错误代码中逐字发布此答案:202提交文件时.


Gur*_*ngh 6

我使用以下步骤找到了解决方案
1.转到编辑方案2.运行 - >信息3.更改构建配置以发布.现在运行应用程序崩溃它.你会收到邮件.


Pat*_*her 1

您是否尝试过[[Crashlytics sharedInstance] crash]在设备上运行并查看是否会报告?Crashlytics 可能无法工作的原因有很多,包括其他崩溃报告程序等。