我有一个 iOS 应用程序,它为非注册用户提供一些服务,并为注册用户提供更多服务。
每次我打开应用程序时,它都会在默认访问者页面上打开,我必须重新登录。
我希望应用程序检查用户是否登录,然后将他重定向到正确的页面。
我正在使用故事板,我认为这与didFinishLaunchingWithOptions:
.
我真的不认为@Necro 正在做什么是必要的。
为什么不每次应用程序进入前台时检查活动会话,如果没有,则(模态地)呈现您的登录视图控制器而不显示动画。这种架构在注销时也提供了非常清晰的逻辑,因为您所做的就是清除会话,显示登录视图控制器,并将主导航层次结构弹出到它的根视图控制器。
简单的。
您可以使用NSUserDefaults来保存有关您的应用程序的信息。
当用户成功登录您的应用程序后,您可以存储用户之前正确登录的状态。
//SETTING USER DEFAULTS
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:txtUsername.text forKey:@"Username"];
[defaults setObject:txtPassword.text forKey:@"Password"];
[defaults setObject:"true" forKey:@"LoginStatus"];
[defaults synchronize];
//RETRIEVING USER DEFAULTS
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSString *Username = [defaults objectForKey:@"Username"];
NSString *Password = [defaults objectForKey:@"Password"];
NSString *Status = [defaults objectForKey:@"LoginStatus"];
然后,一旦您完成了这项工作,您就可以对其应用一些逻辑。
if ([Status isEqualToString:@"true"]) {
[self loginUser:Username :Password]
}
- - - 编辑 - - -
评论中有人说在这里存储密码可能会很麻烦。转到这个:Queston获取一个函数来散列密码字符串。
最后感谢所有投票支持我的人。