Iphone 获取EXC#u坏访问和我不';我不知道为什么

Iphone 获取EXC#u坏访问和我不';我不知道为什么,iphone,objective-c,plist,exc-bad-access,Iphone,Objective C,Plist,Exc Bad Access,我也有过同样的错误,通常都能解决,但这一次让我难堪: self.companyTheme = [[NSDictionary alloc] initWithContentsOfFile: [[NSBundle mainBundle] pathForResource:@"CompanyTheme" ofType:@"plist"]]; 这条道路绝对有效;我已经将它分离到它自己的变量中,并在其上放置一个断点以进行检查 我明白了,这意味着我试图访问一些无法访问的内存,但在哪里? 任何帮助都将不

我也有过同样的错误,通常都能解决,但这一次让我难堪:

self.companyTheme = [[NSDictionary alloc] initWithContentsOfFile:
    [[NSBundle mainBundle] pathForResource:@"CompanyTheme" ofType:@"plist"]];

这条道路绝对有效;我已经将它分离到它自己的变量中,并在其上放置一个断点以进行检查

我明白了,这意味着我试图访问一些无法访问的内存,但在哪里?
任何帮助都将不胜感激。干杯。

Id'打赌
[[NSBundle mainBundle]pathForResource:@“plist”类型的“CompanyTheme]”]
返回
nil
initWithContentsOfFile:
完全不能处理nil参数,并且在
nil
转换内存地址时崩溃
0x0
我解决了这个问题


这是因为我的对象是一个单体,我的应用程序中有一个无限循环。我不知道这些也会导致EXC\u访问不良。你所学到的东西。

self
有效吗?换句话说,这段代码是否出现在一个可能在dealloc之后被意外调用的方法中?几乎所有的时间都意味着您已经(自动)释放了在这一行中使用的某个变量。我想我们需要更多的信息来帮助您:)这是一个单例对象,上面的方法在良好的ol'self=[super init]之后被调用。我也100%不会自动释放这个对象(或变量)。当你说“这是一个单例”时,你是在谈论主捆绑包(这很明显)还是self?路径绝对有效;我已经将它分离到它自己的变量中,并在其上放置一个断点以进行检查。@Dyldo42:继续分离。
-pathForResource:of type:
返回什么?确保这也是非零。调试此复合语句的最简单方法是中断每个单独的操作。这只需要几分钟,将大大缩小罪魁祸首的范围。我已经做到了。我在最初的问题和上面的评论中说了这一点。路径是“/var/mobile/Applications/BE39E65E-7584-4C36-B3C4-37CBD5B6660B/App.App/companyteme.plist”,这是从pathForResource返回的:ofType:EXC_BAD_访问是一个非常具体的错误。通常,当某个对象不接受nil值时,它会抛出NSInvalidArgumentException。问题是别的。