首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Firebase用户身份验证签入应用委派

Firebase用户身份验证签入应用委派
EN

Stack Overflow用户
提问于 2018-08-29 20:43:30
回答 1查看 724关注 0票数 1

我已经在app代理中实现了Firebase身份验证和Firebase数据库,它检查用户是否登录,或者not.It检查数据库中的'users‘节点,看看在子快照中是否有用户I,这个操作大约需要2-3秒。

代码语言:javascript
运行
复制
 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    // Override point for customization after application launch.
    FirebaseApp.configure()

    if let uid = Auth.auth().currentUser?.uid {
        Database.database().reference().child("users").child(uid).observeSingleEvent(of: .value, with: { snapshot in
            if snapshot.exists() {
                print("App Delegate: User found!")
                let storyboard = UIStoryboard(name: "Main", bundle: nil)
                let vc  = storyboard.instantiateViewController(withIdentifier: "Main")
                self.window?.rootViewController = vc
                self.window?.makeKeyAndVisible()
            }
            else{
                print("App Delegate: User not found!")
                let storyboard = UIStoryboard(name: "Main", bundle: nil)
                let vc  = storyboard.instantiateViewController(withIdentifier: "Login")
                self.window?.rootViewController = vc
                self.window?.makeKeyAndVisible()
        }
        })
    }
    return true
}

登录viewController是初始viewController。当启动屏幕淡出时,将显示登录viewController,如果用户已登录,则会显示主viewController,但在本例中,显示登录viewController的时间间隔为2-3秒。我也尝试过实现NavigationController,但是同样的问题。

那么,如果用户已经登录并直接转到主viewController并有效地管理这2-3秒的时间间隔,我怎么能不显示登录viewController呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-29 21:54:52

在本地会话中跟踪isLogin变量,使其在登录和注销成功时为真和假。当第一次登录时,然后检查会话变量isLogin。您可以将会话保存在UserDefault或Keychain中。这样你就可以避免你的问题了。

或者你只需要这样检查:

代码语言:javascript
运行
复制
if FIRAuth.auth().currentUser != nil {
   presentHome()
} else {
 //User Not logged in
}

在那之后,当你导航到desire viewController时,在那里做剩下的事情。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52077793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档