为什么安装后第一次运行时我的iPhone应用程序的发布版本会在设备上崩溃?

时间:2010-05-10 22:19:15

标签: iphone objective-c ios xcode debugging

我有一个iPhone应用程序已经开发了大约2周。我们最近尝试在设备上进行构建的“发布”版本,并且我们非常不满意,它在其中一个视图中以“EXC_BAD_ACCESS”崩溃。

此崩溃仅发生在设备上,并且仅发生在“发布”版本中。不仅如此,它只会在应用程序首次启动时发生!它也是100%可重复的。

我们已经删除了处理数据持久性的小块代码,并尝试重新打开Xcode,清理项目,删除并重新安装应用程序等,正如其他一些问题所示。

您对a)可能导致此问题的原因有什么建议吗?b)如果仅在“发布”中发生,如何进行调试?

由于

2 个答案:

答案 0 :(得分:4)

事实证明代码中没有任何问题。

它崩溃的原因是Xcode试图将调试器附加到发布版本由于某种原因!我们仍在试图找出原因,因为我们检查了最明显的地方,但我确信追踪不会太难。

如果您从iTunes或Xcode组织器安装而不是直接从Xcode构建和运行,那么构建工作正常,因此它根本不会影响您的最终用户,只要您小心检查其他第一个 - 运行问题。

答案 1 :(得分:1)

我们只能猜测原因可能是什么,但如果它是100%可重复的,那么它应该是一些fprintf式调试的好选择。

找出发生错误的最可能的位置,并开始将“得到过去的xxx视图初始化”样式语句放入以开始缩小问题范围。这很乏味,但最终,你会到达那里。

理论上,fprintf语句可能会影响问题。然而,它很少这样做,所以这是一个很好的起点。