检查用户登录状态并使用Firebase和Swift 3

时间:2017-09-11 14:10:45

标签: ios swift firebase swift3

我正在使用swift 3中的企业应用程序。当用户加载应用程序时,我想检查用户是否已登录。如果用户已登录,则系统会将用户转到Home view controller,否则会显示login screen

此工作流程完美无缺。当我使用SignUp按钮注册新用户时,用户信息存储在Firebase中,并向用户显示一条消息:

 “A email will be send to you after verification of your identity”.

现在,如果我关闭应用并再次加载,则会为刚刚注册但从未登录的用户显示Home view controller。此时我已陷入困境,对于新注册的用户我想显示login view controller,以便他可以从那里登录。但相反,他的应用程序直接显示Home view controller。我很感激这里的任何线索。

以下是我在AppDelegate中的代码:

func application(_ application: UIApplication, didFinishLaunchingWithOptions

    launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {

    FIRApp.configure()

    let storyboard = UIStoryboard(name: "Main", bundle: nil)
    let currentUser = FIRAuth.auth()?.currentUser
    if currentUser != nil
    {
       self.window?.rootViewController = storyboard.instantiateViewController(withIdentifier: "HomeViewController")
    }
    else
    {
        self.window?.rootViewController = storyboard.instantiateViewController(withIdentifier: "LoginViewController")

    }

    return true
}

1 个答案:

答案 0 :(得分:0)

用户的实例就在那里,但是您需要检查用户的电子邮件地址是否已经过验证。

使用currentUser.emailVerified。