繁体   English   中英

如何在XCode中找到错误? (iphone项目)

[英]How do I find my error in XCode? (iphone project)

我对XCode还是比较陌生。 我正在尝试构建一个iPhone应用程序,并且在我的application didFinishLaunchingWithOptions方法运行但未在任何代码内运行后,我发现我收到此错误:
[58036:207] *** -[_PFArray release]: message sent to deallocated instance 0x17cd2fe0
我不知道这意味着什么,除了已经释放的某个地方的某个数组已经被释放的事实之外?
真正的问题是,我不知道如何使用那里提供的信息来查找错误所在。 没有要查找的代码行,没有变量名,等等。
如何使用此信息查找所需内容?

尝试启用僵尸,然后xcode会在发生此错误的行上自动放置一个断点。 Google nszombieenabled获取更多信息

编辑:嗯,我没有太多事情要做,在这里,您的指南,

  1. 打开仪器。 它是一个应用程序,您可以在“〜/ Developer / applications / instruments”(默认安装路径)中找到它。 乐器将是您的右手,因此请精通它。

  2. 在打开的屏幕中,您将看到一堆模板。 打开一个名为“ Zombies”的僵尸。 注意:您将经常使用名为“泄漏”的模板。 它显示您忘记释放的所有内存泄漏。

  3. 从“选择目标”(左上角)中,选择“选择目标”,然后再次选择“选择目标”。 从这里浏览项目目录,然后选择“ build / Debug-iphonesimulator / executableName”。 在这里,我假设您已在nszombieenabled为true的调试配置文件中构建了项目。 如果不是,则进行构建并回复3。

  4. 按下录音按钮(左上角)。 模拟器将出现,您的应用程序将启动。 然后重现您遇到的错误。

  5. 仪器将中断应用程序并显示消息提示框。 不要关闭气泡。 从窗口中间的栏中,选择“对象列表”而不是“统计信息”。 现在,到目前为止分配的所有对象都位于一个按其内存地址排序的列表中。 在这里向下滚动到气泡内写的内存地址。 您可以键入首字母以快速滚动。 然后双击找到的行。 如果您是自己的代码,这会将您带到分配对象的代码。 如果不是,则ios分配了该对象。 但是请放心,双击上下两行,看看它们是否由您分配。 这应该给您一个提示,可能是问题所在,因为这些行触发了ios分配对象(可能)。

这就是我能说的。 希望您能找到导致此错误的原因。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM