如果已登录则自动重定向以查看 - iOS

时间:2013-04-16 08:37:41

标签: iphone ios xcode

我有一个iOS应用程序,它为非注册用户提供一些服务,为注册用户提供更多服务。

每次打开应用程序时,它都会在默认访问者页面上打开,我必须再次登录。

我希望应用检查用户是否已登录,然后将其重定向到正确的页面。

我使用的是故事板,我认为这与didFinishLaunchingWithOptions:有关。

2 个答案:

答案 0 :(得分:1)

我真的不认为@Necro正在做什么是必要的。

为什么不在每次将应用程序带到前台时检查活动会话,如果没有,请在没有动画的情况下显示(模态)登录视图控制器。这种体系结构在注销时也可以实现非常干净的逻辑,因为您所做的就是清除会话,显示登录视图控制器,并将主导航层次结构弹出到它的根视图控制器。

简单。

答案 1 :(得分:0)

您可以使用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以获取散列密码字符串的函数。

最后,谢谢所有投票给我的人。