【发布时间】:2014-10-07 06:48:07
【问题描述】:
以前我的NSUserDefaults 工作正常,但最近升级到iOS 8 后,它在我的模拟器中失败(不确定真实设备,因为我在真实设备上没有iOS 8)。我已经在iOS7 上进行了测试,它可以在模拟器和真实设备上运行。所以我不确定是iOS 8 问题还是只是iOS 8 模拟器问题。
我的问题是即使保存后它总是返回空字符串。
我的代码如下:
+(void)SetStringValueForConfigurationKey: (NSString *) _objectkey withValue:(NSString *)_value
{
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults synchronize]; //let's make sure the object is synchronized
[defaults setValue:_value forKey:_objectkey];
[defaults synchronize];//make sure you're synchronized again
}
+(NSString *)GetStringValueForConfigurationKey: (NSString *)_objectkey
{
//create an instance of NSUserDefaults
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults synchronize]; //let's make sure the object is synchronized
if ([defaults stringForKey:_objectkey] == nil )
{
//I don't want a (null) returned
return @"";
}
else
{
return [defaults stringForKey:_objectkey];
}
}
有什么方法可以将模拟器升级到iOS 8.0.2?或者我怎样才能找到问题的原因?
谢谢。
【问题讨论】:
-
你用 valueforkey 试过了吗?