Iphone 未保存NSUserDefault值
使用下面的代码保存sessionIDIphone 未保存NSUserDefault值,iphone,objective-c,ios,Iphone,Objective C,Ios,使用下面的代码保存sessionID NSUserDefaults *sessions = [NSUserDefaults standardUserDefaults]; [sessions setObject:sID forKey:@"sessionsID"]; [sessions synchronize]; NSLog(@"Session Value Saved"); 检索该值的代码为: NSUserDefaults *sessions = [NSUserDefaults stand
NSUserDefaults *sessions = [NSUserDefaults standardUserDefaults];
[sessions setObject:sID forKey:@"sessionsID"];
[sessions synchronize];
NSLog(@"Session Value Saved");
检索该值的代码为:
NSUserDefaults *sessions = [NSUserDefaults standardUserDefaults];
NSString *myString = [sessions stringForKey:@"sessionsID"];
NSLog(@"nsuser: %@", myString);
但在控制台上,它显示为:
2012-01-03 15:37:37.292 LoginTest[574:12503] sID: c339af83caa5355d124f70e3f22c193d
2012-01-03 15:37:37.296 LoginTest[574:12503] Session Value Saved
2012-01-03 15:37:37.297 LoginTest[574:12503] Accounts: ("uid=demo@url.com", "o=Demo","o=Und")
2012-01-03 15:37:37.302 LoginTest[574:12503] sID: (null)
2012-01-03 15:37:37.304 LoginTest[574:12503] Session Value Saved
2012-01-03 15:37:37.304 LoginTest[574:12503] Accounts: (null)
2012-01-03 15:37:37.305 LoginTest[574:12503] No Session created
为什么它被调用了两次,一次保存了值并显示出来,第二次为null
我正在使用ARC
我被这搞砸了。。。请指导我如何解决这个问题我们不知道为什么它会被调用两次;这是你的应用:) 在
[sessions setObject:sID forKey:@“sessionsID”]上放置断点代码>
第一次命中sIDsID
将有效
然后发生了使sID无效的事情:(
第二次命中时,它看起来像是sID
是null
-您应该能够使用控制台/堆栈来找出它被调用两次的原因。您用于检索值的代码将有助于我们了解什么类型的对象是sID
?这非常适合我…:|获取sID是NSSTRING,ou在哪里t输出NSLog(@“nsuser:%@”,myString);???我已经尝试过,您的代码在mecheck上运行良好,可以从调用函数的位置将sID存储在nsuser默认值中