我正在使用XCode和Firebase构建iOS swift应用。这是我的登录状态处理程序:
FIRAuth.auth()!.addStateDidChangeListener { (auth, user) in
if user != nil{
let fullName = user?.displayName
print("logged in: " + fullName!)
self.performSegue(withIdentifier: self.loginToFeed, sender: nil)
}
}
这适用于iPhone 7+模拟器并将我发送到我的Feed。但是,现在的问题是:当我切换到iPhone 5s手机或模拟器(全部在10.2.0!)时,它不起作用。问题是状态变化auth.currentUser
和user
总是为零。 Google登录页面显示并让我登录。登录后没有任何反应,因为这些值是零。
我的控制器是GIDSignInUIDelegate
,我使用GIDSignIn.sharedInstance().signIn()
来触发登录。
由于代码适用于iPhone 7+仿真器,我真的不明白发生了什么。