NSUserDefaults值未保存到iPhone [英] NSUserDefaults values are not getting saved iPhone
问题描述
使用以下代码保存sessionID.
NSUserDefaults * sessions = [NSUserDefaults standardUserDefaults];[sessions setObject:sID forKey:@"sessionsID"];[会话同步];NSLog(@会话值已保存");
检索值的代码为:
NSUserDefaults * sessions = [NSUserDefaults standardUserDefaults];NSString * myString = [会话stringForKey:@"sessionsID"];NSLog(@"nsuser:%@",myString);
但是在控制台上它显示为:
2012-01-03 15:37:37.292 LoginTest [574:12503] sID:c339af83caa5355d124f70e3f22c193d2012-01-03 15:37:37.296 LoginTest [574:12503]会话值已保存2012-01-03 15:37:37.297 LoginTest [574:12503]帐户:("uid=demo@url.com","o = Demo","o = Und")2012-01-03 15:37:37.302 LoginTest [574:12503] sID :(空)2012-01-03 15:37:37.304 LoginTest [574:12503]会话值已保存2012-01-03 15:37:37.304 LoginTest [574:12503]帐户:(空)2012-01-03 15:37:37.305 LoginTest [574:12503]未创建任何会话
为什么要两次调用它,一次将其保存并显示出来,第二次给出空值.
我正在使用ARC.
我对此感到困惑...请指导我如何解决此问题
我们不知道为什么它被调用了两次;这是您的应用程序:)
在 [sessions setObject:sID forKey:@"sessionsID"];上放置一个断点;
第一次被击中 sID
将是有效的.
然后发生了使 sID
:(
第二次被击中,它看起来像 sID
为 null
-您应该能够使用控制台/堆栈来弄清楚为什么它被两次调用./p>
Using the below code to save the sessionID.
NSUserDefaults *sessions = [NSUserDefaults standardUserDefaults];
[sessions setObject:sID forKey:@"sessionsID"];
[sessions synchronize];
NSLog(@"Session Value Saved");
The code to retrieve the value is:
NSUserDefaults *sessions = [NSUserDefaults standardUserDefaults];
NSString *myString = [sessions stringForKey:@"sessionsID"];
NSLog(@"nsuser: %@", myString);
But on console it is showing like:
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
why is it being called two times and once it saves the values and shows them up and second time giving null.
I am using ARC.
I am messed-up with this... please guide me how can I resolve this issue
We dont know why it's getting called twice; it's your app :)
Put a breakpoint on [sessions setObject:sID forKey:@"sessionsID"];
The first time this gets hit sID
will be valid.
Then something is happening that is invalidating sID
:(
The second time it gets hit it looks like sID
is null
- you should be able to use the console / stack to work out why it's being called twice.
这篇关于NSUserDefaults值未保存到iPhone的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!