如何在应用程序中保存用户信息
问题描述:
我通过textifields向我的upp输入一些用户信息。我希望我的应用程序保存这些信息,并且每当我的应用程序打开时,都使用相同的信息。我使用NSUserDefaults,但如果我从RAM(意味着,从正在运行的进程)清理应用程序并尝试统计/打开我的应用程序,它会崩溃。我必须使用什么来始终保存用户信息。如何在应用程序中保存用户信息
编辑
保存我的数据在AppDelegate中,当用户点击home键我想,用户的相关信息进行保存。这里是我的代码:
- (void)applicationDidEnterBackground:(UIApplication *)application
{
NSLog(@"url in background: %@", mainUrl);
//uName and passwd are strings that come from other classes
NSUserDefaults *name=[NSUserDefaults standardUserDefaults];
[name setObject:uName forKey:@"userNameDefault"];
NSUserDefaults *passWd=[NSUserDefaults standardUserDefaults];
[passWd setObject:passwd forKey:@"passwordDefault"];
}
EDIT 2
我尽快做到这一点,因为我收到来自服务器在我的第一个视图控制器的响应。我用sturtup这三个数据对象,但仍崩溃
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
[defaults setObject:_username.text forKey:@"userNameDefault"];
[defaults setObject:_password.text forKey:@"passwordDefault"];
[defaults setObject:_server.text forKey:@"serverDefault"];
答
您在您的视图控制器重新设置默认值时,要进行检索它们,以显示他们呢? uName = [defaults objectForKey @“userNameDefault”]
NSUserDefaults是正确的方法。显示一些代码如何实现它。 – Darren 2012-03-26 21:47:27
@Darren你能看到我的编辑 – ilhnctn 2012-03-26 21:55:37
它没有必要声明NSUser默认值两次。只需使用NSUserDefaults * defaults = [NSUserDefaults standardUserDefaults]然后使用[默认setobject ...对于两者。但是,这不是你的问题。你说它重新启动应用程序时崩溃,启动时使用了什么代码? – Darren 2012-03-26 22:11:17