诊断不可重现的错误?

时间:2013-08-22 20:25:43

标签: ios

我有一个非常基本的,但非常重要且可能不可能的问题:如何诊断一个你无法复制的错误?

现在两次,我收到了来自人们的电子邮件,询问有关应用程序崩溃的错误,我无法重现这些错误。非修改的iPhone,当前的软件,尝试重新安装和硬重置等。它每次都崩溃,它对我来说很完美,(更不用说它首先被批准在App Store,所以我'显然不是唯一的一个)。我一直都知道设备的一致性是苹果公司对开发人员的一大卖点之一,但这也很难确定他们的设备与我的设备有什么不同......

所以,除了"只是继续测试,"对于这类事情,程序员之间是否存在交易技巧? iPhone模拟器的一些功能,让您不仅可以测试不同的屏幕尺寸,还可以测试不同的硬件配置等?或者我只是运气不好,并且告诉我的客户"对不起,它适用于我"?

有人可以分享他们的经验或建议吗?

4 个答案:

答案 0 :(得分:3)

您应该首先安装崩溃报告工具,例如Crashlytics。这可能会为您提供所需的线索,或者至少可以帮助您缩小其他崩溃日志记录的范围。

答案 1 :(得分:3)

虽然iTunes Connect崩溃报告可能会有所帮助,但Crittercism等崩溃报告服务更加用户友好且功能齐全。 Critterism非常有助于追踪我的应用程序不常发生的崩溃,并且可以免费使用。 (我与Crittercism毫无关联。)

答案 2 :(得分:2)

在iTunes Connect中,您可以访问崩溃报告。这些崩溃报告包括您可以进行符号化的调用堆栈,然后您可以看到它实际崩溃的位置。

以下是符号化的一些好的说明:symbolicating-iphone-app-crash-reports

答案 3 :(得分:2)

保持每个版本的dsym文件非常重要。存档安全。您可以使用它们来表示崩溃报告,以查看崩溃的详细信息。用户必须选择提交崩溃报告。我认为这是iTunesConnect的一项功能。