我需要创建一个iPhone应用程序...它将与网站通信...所以它需要用户名和密码...现在我需要知道如何在iPhone中保存用户名和密码...我有已经使用过NSuserdefaults ...但是这并没有解决我的pblm ....我还需要恢复视图...用户退出应用程序的位置......所以我请求你帮助我?
关心并感谢您的支持,
SYAM
答案 0 :(得分:10)
关于在纯文本文件(例如plist文件或NSUserDefaults)上保存安全数据(用户名/密码),我有点偏执。
Apple提供钥匙串服务来存储安全数据。这有点复杂,请查看文档Keychain Services Tasks for iPhone OS
他们还提供Generic Keychain app来探索。
答案 1 :(得分:0)
您可以将密码存储在常规文件中,也可以将其存储在SQLite数据库中。
答案 2 :(得分:0)
我最近在应用程序中有一个注销功能。
我有一个等级:
"BaseUITableViewController
^
|
"Any subclass of UITAbleView Controller used in project."
所有这些子类都有一个“Logout”按钮,调用注销服务的方法是用Base类编写的。
一旦注销请求的响应有效且会话被终止,我就会调用以下方法(与上述文本形成对比,您感兴趣的是:)
-(void)gotoMainScreenOnLogout
{
self.navigationController.navigationBarHidden = YES;//to make the previous view invisible
self.navigationController.toolbarHidden=YES; //27 JUNE UPDATE
[self.view removeFromSuperview]; //27 JUNE UPDATE
// MYAPPViewController *homeViewController = [[MYAPPViewController alloc]initWithNibName:@"MYAPPViewController" bundle:nil];
MYAPP_LoginUIVIewController *homeViewController =[[MYAPP_LoginUIVIewController alloc] initWithNibName:@"MYAPP_LoginUIVIewController" bundle:nil];
UINavigationController *nc = [[UINavigationController alloc]initWithRootViewController:homeViewController ];
[nc.navigationBar setBarStyle:UIBarStyleBlackOpaque];
//
UIWindow *MYAPP_window = [[[UIApplication sharedApplication] windows]objectAtIndex:0];
CATransition *transition = [CATransition animation];
transition.duration = 0.8;
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.type = kCATransitionMoveIn;
transition.subtype = kCATransitionFade;
transition.delegate = self;
//...
[MYAPP_window.layer addAnimation:transition forKey:nil];
[MYAPP_window removeAllSubviews]; // not needed anymore
[MYAPP_window addSubview:nc.view];
[homeViewController release];
}
希望这会有所帮助。