你如何处理iPhone应用程序中的崩溃?

时间:2010-07-29 22:30:47

标签: iphone objective-c mobile exception-handling error-handling

如果一直在寻找网络,似乎无法找到任何好的解决方案,允许您的用户从您的iPhone应用程序提交错误报告。

你如何处理崩溃和异常?

  • 您是否将错误用户数据发送到服务器
  • 从某处抓取一个日志文件并附上,
  • 或者你是否忽略它并假装从未发生过?

有人有过这方面的经验吗?

更新

我知道如何使用静态分析,泄漏检测,用户测试等为您准备软件测试。

但是当用户(误)使用我的软件时,仍可能发生错误。始终假设您的用户试图破坏您的软件。

我想知道的是,当错误发生时,我(或者说应用程序)如何为我提供有用的数据。正如他们甚至在高品质产品中所做的那样 - 就像我自己的产品一样。 :)

我正在寻找有经验的人,允许使用它来发送错误报告,堆栈跟踪,日志等,以了解它们如何处理问题。

3 个答案:

答案 0 :(得分:4)

有些人使用像Flurry这样的内置分析,它会将异常数据发布到Flurry的网站,您可以稍后查看。

此外,Apple在iTunes Connect上有一个“崩溃日志”报告区域,但我不确定它是否有效,因为我还没有看到一些事情发生,我有点怀疑每个人都能完美运行我的应用程序。不是说我编写了糟糕的代码(希望如此),但并不是每个设备都是相同的,所以我不得不想象它至少已经崩溃了。以后总是可以选择记录和发送到服务器。

大多数情况下,如果您在应用程序本身(例如说明书或屏幕上)向用户提供您的电子邮件地址,他们将通过电子邮件向我发送任何问题。这有点好,因为它让你有机会在iTunes上点击评论表格之前解决问题。

答案 1 :(得分:2)

您也可以尝试BugSense。这是iOS的免费,实时,错误报告

PS:我是其中一位创始人。

答案 2 :(得分:-2)

崩溃大部分时间都伴随着内存管理问题。测试内存泄漏并在代码中找到泄漏内存的区域。如果您使用XCode,请使用仪器。

在你的XCode中转到Run - >使用性能工具运行 - >泄漏。

在内存分配方面,您可以查看所有内容。

注意:为避免崩溃,请确保正确释放对象并检查预定的计时器。

此致 ZaldzBugz