在viewDidDisappear上删除Firebase authState

时间:2016-06-05 12:47:33

标签: ios swift firebase firebase-authentication

我正在使用Firebase的新框架,我试图分别在Login和Signup VC上监控用户的登录状态。问题是如果登录状态在SignUp视图上发生更改,则也会调用Login视图上的Auth State。我的问题是,如何删除身份验证状态?我在Firebase网站上找到了语法,但在考虑我的auth状态代码时,对于传递的内容有点困惑:

FIRAuth.auth()?.addAuthStateDidChangeListener { auth, user in
            if let theUser = user {
                // User is signed in.
                print("LOGGED IN!!!!  :::: \(theUser)")
                self.dismissViewControllerAnimated(true, completion: nil)
            } else {
                // No user is signed in.
                print("Need to login first.")
            }
        }

用于删除身份验证的代码,但不确定要传递的内容。

FIRAuth.auth()?.removeAuthStateDidChangeListener(FIRAuthStateDidChangeListenerHandle) 

说我传入FIRAuthStateDidChangeListenerHandle,但我如何获得此信息,还是以不同方式重写我的authState代码?

1 个答案:

答案 0 :(得分:6)

只需将auth存储在变量

FIRAuth.auth()?.removeAuthStateDidChangeListener(self.authListener) 

稍后将其删除

min-height: 500px