我试图在应用程序终止时注销用户(因为在这种特殊情况下,用户数据不会经常更改,因此在进入后台时无需注销)。
所以这是我的代码:
- (void)applicationWillTerminate:(UIApplication *)application
{
User *user = [[User alloc]init];
[user logout];
}
我首先尝试将用户注销,但它不起作用:
- (void)applicationWillTerminate:(UIApplication *)application
{
[[NSUserDefaults standardUserDefaults] setBool:NO forKey:@"logged_in"];
}
有什么想法吗?
答案 0 :(得分:0)
如果您希望立即更新默认值,则应在更新后同步:
[[NSUserDefaults standardUserDefaults] synchronize];
正如文档所记录的那样(khm,请查找文档),NSUserDefaults
类不会立即将更改保留在磁盘上,只会暂时保留一次。