Когда я пытаюсь выполнить следующий код для получения учетных данных для пользователя Microsoft и войти в Firebase, ответа нет:
import Foundation
import FirebaseDatabase
import FirebaseAuth
class MicrosoftAuthenticator {
var delegate: AppleAuthenticatorDelegate?
func startMicrosoftAuthentication() {
print("Started")
let provider = OAuthProvider(providerID: "microsoft.com")
print("Provider Created")
provider.getCredentialWith(nil) { credential, error in
print("Cred retrieved")
if error != nil {
print(error!)
return
}
if credential != nil {
Auth.auth().signIn(with: credential!) { authResult, error in
if error != nil {
print(error!)
return
}
print("User Authorized")
}
}
}
print("Finished")
}
}
Я вызываю метод, используя следующее:
let authenticateMicrosoft = MicrosoftAuthenticator()
authenticateMicrosoft.startMicrosoftAuthentication()
Я следовал документам Firebase для использования Microsoft в качестве поставщика, и я выполнил всю настройку (регистрацию с Azure, включение Microsoft в Firebase и добавление типов URL-адресов), но когда я пытаюсь получить учетные данные, это не работает. Поскольку я использую SwiftUI, я добавил в свой SceneDelegate
следующий код:
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
for urlContext in URLContexts {
let url = urlContext.url
Auth.auth().canHandle(url)
}
}
Я не понимаю, что я сделал не так. Может быть, я пропустил какой-то код? Заранее спасибо!