EXC_BAD_access代码= 2地址0x8

时间:2013-09-23 06:26:53

标签: iphone objective-c ios7 xcode5

我有一个我一直在努力的应用程序,它在XCode 4.5的iOS 6上完美运行,但现在我用iOS 7下载了XCode 5并得到了这个错误,

  

线程1:EXC_BAD_access代码= 2地址0x8

在main.m中:

#import <UIKit/UIKit.h>
#import "TestAppDelegate.h"

int main(int argc, char *argv[])
{
    @autoreleasepool {
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([TestAppDelegate class]));
    }
}

我下载了iOS 6 sdk,代码在iOS 6 sdk yet上运行完美,但在iOS 7中,我收到此错误,我不知道为什么? 我尝试调试这个,但没有得到有关崩溃的信息。我读了一些关于僵尸的内容并通过转到产品 - &gt;编辑架构 - &gt;诊断 - &gt;启用僵尸对象来启用它。但即使在此之后,我也没有得到任何帮助。

任何指针?

3 个答案:

答案 0 :(得分:12)

我想扩展Vinzzz给出的提示,但略有不同(例外情况不是符号断点)。

这里的问题是程序停止了操作系统捕获异常(访问不良)。您需要比这更早一步,以查看代码中的异常,这将导致iOS异常。转到左侧Xcode屏幕面板部分(断点导航器)上的断点选项卡。然后在面板的底部应该有一个+号。单击此处并添加“异常断点”。重新运行程序,现在应该在尝试将问题引入OS环境时进行测试。这提供了有关谁和原因的信息。

答案 1 :(得分:0)

当你到达(lldb)提示时,尝试按下继续按钮。这可能会在调试器控制台的顶部显示底层错误消息。查找粗体文本的顶部以查看可能导致问题的对象。此类错误通常是指尝试访问已解除分配的对象。

答案 2 :(得分:0)

我也有这个错误,因为在我的用户模型类中,我有一个额外的对象,我声明为

var image = UIImage() 

我没有将它用于从模型类中删除的任务,我的应用没有崩溃,因此我将检查模型类。