在Firebase Auth中使用Microsoft作为提供程序时,登录UIApplication:open:url
后将通过重定向进行调用。但是文档(https://firebase.google.com/docs/auth/ios/microsoft-oauth)中没有关于如何处理以及如何关闭登录页面的信息。
对于GoogleAuthProvider,您可以在GIDSignIn.sharedInstance().handle(url...)
中调用UIApplication:open:url
来处理重定向,这将关闭WebView,并且效果很好。
找不到有关如何处理重定向的任何信息。
var provider: OAuthProvider?
@IBAction func buttonTapped(_ sender: Any) {
provider = OAuthProvider(providerID: "microsoft.com")
provider?.customParameters = [
"prompt": "consent",
"login_hint": "",
]
provider?.getCredentialWith(nil ) { credential, error in
if error != nil {
// Handle error.
}
print(credential?.provider)
if let credential = credential {
Auth.auth().signInAndRetrieveData(with: credential)
{ (authResult, error) in
print(authResult?.additionalUserInfo?.profile)
print(authResult?.user.providerID)
}
} else {
}
}
}
我希望用户登录后,Microsoft SignIn页面将关闭,并调用getCredentialWith完成。