我正在解决一个非常难以捉摸的bug,与我的代码有关。问题是,这个bug完全是随机的,可能在应用程序运行9分钟或30分钟后发生。我已经将PLCrashReporter添加到我的项目中(http://code.google.com/p/plcrashreporter),对于一些简单的bug它可以正常工作。此外,当我怀疑时,我会导航到~/Library/Logs/CrashReporter/MobileDevice/中找到的崩溃日志并在崩溃日志上运行symbolicatecrash。这样做加上GDB最终可以捕获任何bug,但无法解决我现在所面临的这个bug。
显然,这个bug的性质甚至阻止了苹果的崩溃日志被正确地写入存储。这表现在我通过iTunes将我的iPhone或iPod Touch与计算机同步并在我的应用程序上运行symbolicatecrash时出现。
也许我的应用程序根本没有留下崩溃报告,而是由于内存问题退出了。我确实看到applicationWillTerminate:在我的App Delegate中执行我的NSLog语句后退出。然而,在通过ObjectAlloc运行应用程序之后,我的应用程序从未达到超过2.08MB的使用量。虽然如果我正确地阅读结果,我在整个测试运行期间分配了超过28MB的内存。谢谢你的一切。
显然,这个bug的性质甚至阻止了苹果的崩溃日志被正确地写入存储。这表现在我通过iTunes将我的iPhone或iPod Touch与计算机同步并在我的应用程序上运行symbolicatecrash时出现。
sf$ symbolicatecrash foo.crash
No crash report version in foo.crash at /usr/local/bin/symbolicatecrash line 741.
也许我的应用程序根本没有留下崩溃报告,而是由于内存问题退出了。我确实看到applicationWillTerminate:在我的App Delegate中执行我的NSLog语句后退出。然而,在通过ObjectAlloc运行应用程序之后,我的应用程序从未达到超过2.08MB的使用量。虽然如果我正确地阅读结果,我在整个测试运行期间分配了超过28MB的内存。谢谢你的一切。