iPhone应用程序仅在3G上的发布模式下崩溃

whi*_*awk 6 iphone crash release-mode 3g

当我在带有"EXC_BAD_ACCESS"的UIScrollView上调用addSubview时,我正在编写一个崩溃的应用程序.它仅在iPhone 3G上以发布模式执行,仅在设备上执行此操作.我在所有这些其他配置中工作正常:

iPhone 3G - 调试模式iPhone 3GS - 调试和释放模式iPhone 4 - 调试和释放模式模拟器 - 全部.

此外,没有理由说明为什么会发生这种情况.我的任何代码都没有发布我的对象.

小智 12

我最近遇到了完全相同的问题,但我不完全确定原因是一样的.我可以告诉你的是,为我解决了这个问题(虽然我对解决方案仍然不满意).

最后,它似乎是一个编译器问题,这可能会证实其他人对编译器优化的看法.我正在使用Xcode 4.0(构建4A304a).问题出在LLVM编译器2.0代码生成中.特别关键一点:"优化级别"

Debug设置为"None".发布被定为"最快,最小"

将Release更改为"None"修复了崩溃(同样地将Debug更改为"Fastest,Smallest"导致应用程序在启动时崩溃).


Jua*_*nez 2

我建议您使用NSZombieEnabled来找出导致内存访问错误的原因。

  • 您是否使用 DEBUG / RELEASE 定义来分支代码?
  • 您是否使用 SDK 版本检查器来分支代码?

否则我无法看到您的应用程序在不同设备/配置上的行为有何不同。