ios - 在 Cocoa Touch 应用程序上生成崩溃报告

标签 ios cocoa-touch debugging crash-reports

这听起来可能比实际情况要糟糕得多,但这是我的问题。

我正在处理我的一位测试人员正在使用的实际设备上的崩溃。目前,无法发现导致崩溃的原因。我无法在模拟器上重现它。但是,在模拟器上,当出现崩溃时,我会在输出窗口中获取有关它的日志信息。但我不想在连接设备的情况下继续测试。

当事情崩溃时,是否可以将崩溃异常等记录到文件中。我知道某些应用可以做到这一点,但我不确定怎么做?

如有任何信息,我们将不胜感激。

最佳答案

一般有两种方法:

  1. 有人让测试人员向您发送 iOS 在设备上创建的崩溃报告。这对于最终用户来说通常太棘手了,所以下一个建议效果更好。这也是为什么我没有描述如何做到这一点的原因 :) 但是您会找到大量关于该过程的文档。

  2. 集成一个崩溃报告库,它可以捕获崩溃并允许您以各种方式接收它们。您不应该实现自己的全局崩溃异常处理程序,事情太复杂而无法正确执行(即使其他人会告诉您其他情况)。异常引起的崩溃也只是一种类型的崩溃。

    有多个开源库,最安全的使用是基于 PLCrashReporter 的库。大多数其他人使用私有(private)或未记录的 iOS API,或者不是异步安全的,这基本上意味着这些可以破坏应用程序数据或使崩溃更糟。请参阅有关该主题的博客文章:http://landonf.bikemonkey.org/code/crashreporting/Reliable_Crash_Reporting_1.1.20130119.html

    以下链接的答案显示了一些有关如何向您的应用程序添加日志记录的可用选项,以及有关如何接收测试版崩溃报告以及应用程序发布后的各种选项:Including custom data into iOS crash dumps

关于ios - 在 Cocoa Touch 应用程序上生成崩溃报告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15343116/

相关文章:

sockets - Flash 不再运行调试器。 Windows-10 中可能存在套接字问题吗?

ios - 排除长按识别器的特定区域

ios - 如何在iOS中获取当前本地时间

ios - 如何在 Swift 中缩放卡片时翻转卡片

iphone - 我如何在 TableView 的单元格中获取容器 UITableView

ios - 带分页的 UICollectionView

ios - 调用从 NSString 返回值的方法?

iphone - 在 settings.bundle 中指定不可编辑的字符串?

visual-studio-2010 - Visual Studio 2010 调试器正确构建 - 编译器 pdb 和链接器 pdb 不同步?

python - print() Python3.2 中的语法错误?