保存到standardUserDefaults时访问不正确

时间:2011-09-06 05:41:00

标签: iphone memory-management nsuserdefaults

出于某种原因,当我尝试将一个字符串保存到NSUserDefaults时,我收到了错误的访问错误。

NSString *apikey = @"key";
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:apikey forKey:@"apiKey"];
[defaults synchronize];

它提供错误访问权限的行是[defaults setObject:apikey forKey:@"apiKey"];

我还没有发布apikey或默认值,但它总是让我访问不好。我想知道如何解决这个问题。

编辑: 解决

似乎[[NSUserDefaults standardUserDefaults] setObject:apikey forKey:@"apiKey"]; 做了这个伎俩作为导致异常的那条线的替代品。

1 个答案:

答案 0 :(得分:1)

你真的确定在你的真实代码中它不是以:

开头
NSString *apikey = "key";

而不是Objective-C字符串?或者它没有以其他方式初始化?运行Analyze时,是否会为任何代码行发出警告?