我开发了一款带有Snow Leopard(10.6.2)和Xcode(3.2.1)的iPhone应用程序。正如我们许多人所知,在这个新版本的Xcode中,我们获得了Build and Analyze(检查内存泄漏和其他问题)的功能。当我构建和分析我的应用程序时,它没有给我任何错误/没有警告。
我的应用程序也可以在模拟器上正常运行。
现在,我尝试使用8GB内存在iPhone设备(设备配置:iPhone 2G和iPhone OS 3.0)上测试应用程序。
问题是应用程序在iPhone设备上启动良好,但过了一段时间后,它崩溃了。
当我从Window-> Organizer-> Console看到控制台时。我看到以下错误:
12月22日星期二17:17:39未知SpringBoard [27]:内存级别紧急(8%)并且没有后台应用程序可以要求退出。
请帮帮我。
此致 PRATIK
答案 0 :(得分:2)
分析仪只会检测最明显的内存问题。 您应该通过仪器泄漏检查快速运行您的应用程序。
转到Run - >使用性能工具运行 - >泄漏
仪器将启动,如果您之前没有使用它,它将显得非常混乱。 最好在此时查阅仪器文档,以进一步说明最新情况。
我很可能你的应用程序中有很多漏洞,而且你可以找到并调试最困难的内存问题。
答案 1 :(得分:0)
显然,设备内存不足,应用程序被终止。这意味着您的应用程序可能使用了太多内存。这解释了为什么应用程序在桌面系统上的模拟器上运行良好,至少有10倍的RAM。
你可能也忽略了来自操作系统的低内存消息。您需要检查应用程序的内存使用情况。
答案 2 :(得分:0)
100%不应信任分析仪。它可以抛出误报,在某些情况下不会发现任何单一错误的代码。这是很好的帮助,但绝不是“一站式修复错误”。
此外,虽然分析仪可能显示您没有泄漏,但您可能根本不会释放内存?正如CharlieP所说,没有任何代码,我们无法帮助你。
你可能有圆形的保留周期,阻止你完全释放物体。当然,这只是众多可能性中的一种。我们需要看代码。