Понимание addStateDidChangeListener firebase аутентификации - PullRequest
0 голосов
/ 02 мая 2020

Привет, я новичок в firebase и хочу подтвердить свое понимание функции аутентификации. (AddStateDidChangeListener)

Небольшой фон:

Когда приложение запускается впервые, делегат приложения сначала вызывается, а затем вызывается эта функция sceneDelegate. Теперь он будет отображать экран в зависимости от того, вошел ли пользователь в систему или нет. Если они не подписаны, им будет показан мой экран входа / регистрации (self.createHandleSignInOrSignUp ()).

Сейчас 2 вопроса:

  1. После того, как они зарегистрируются или войдите в приложение, чтобы вернуться к этому блоку кода внутри .addStateDidChangeListener.

    Это потому, что изменяется состояние аутентификации, верно?

  2. Кроме того, во время работы приложения вы можете выйти, а затем вызывается этот блок кода.

    Это потому, что эта функция всегда «прослушивает» изменения состояния авторизации во время работы приложения?

Приведенный ниже код является моей частью моего файла SceneDelegate.swift и функция у меня есть вопросы.

Спасибо

class SceneDelegate: UIResponder, UIWindowSceneDelegate {

var window: UIWindow?

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
    guard let windowScene = (scene as? UIWindowScene) else { return }

    window = UIWindow(frame: windowScene.coordinateSpace.bounds)

    window?.windowScene = windowScene

    handle = Auth.auth().addStateDidChangeListener({ auth, user in
        if (user != nil) {
            self.window!.rootViewController = self.createTabBar()
        }
        else {
            self.window!.rootViewController = self.createHandleSignInOrSignUp()
        }
    })

    window?.makeKeyAndVisible()
}

1 Ответ

2 голосов
/ 02 мая 2020
  1. Обработчик завершения для вашего прослушивателя изменения состояния авторизации будет вызываться каждый раз, когда изменяется состояние аутентификации. Обычно это происходит асинхронно, например, когда пользователь выполняет вход или выход.

  2. Прослушиватель состояния аутентификации остается активным до тех пор, пока вы не удалите его или пока приложение не закроется.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...