Я новичок в Firebase, и я в настоящее время пытаюсь обработать (при загрузке приложения), если пользователь вошел в систему. Поэтому согласно книге я должен проверить это следующим образом:
if Auth.auth().currentUser?.uid == nil {
//do smth
}
Таккак выясняется (если я что-то не пропустил и не ошибаюсь), он проверяет только последнего пользователя в разделе аутентификации консоли.Я имею в виду, если я зарегистрировал пользователя таким образом:
Auth.auth().createUser(withEmail: email, password: password) { (User, Error) in
if Error != nil {
print(Error)
return
}
И просто закройте мое приложение, тогда во время проверки оно увидит только последнего зарегистрированного пользователя.И после обнаружения этого вошедшего в систему пользователя, и если я выйду из системы, приложение не увидит остальных вошедших в систему пользователей в следующей процедуре проверки.
Так что это выглядит так:
- Я запустил приложение, затем создал пользователя несколько раз (создать, затем завершить приложение и снова создать, затем завершить приложение и вернутьсяснова)
Затем, после шага 1, проверьте, вошел ли пользователь. Это последний пользователь или 1-й пользователь, которого я не знаю, потому что я не нашел, и подробная информация о нем.
if Auth.auth().currentUser?.uid == nil {
//do sign out
do {
try Auth.auth().signOut()
} catch let logoutError {
print(logoutError)
}
}
Он находит вошедшего в систему пользователя, затем я выделяю этого пользователя.
- Я закрываю приложение.
Я снова запускаю это приложение и во время первоначальной проверки зарегистрированных пользователей оно не находит ни одного из них.
override func viewDidLoad() {
super.viewDidLoad()
navigationItem.leftBarButtonItem = UIBarButtonItem(title: "Logout", style: .plain, target: self, action: #selector(handleLogout))
//user is not logged in
if Auth.auth().currentUser?.uid == nil {
signOut()
}
}
Почему?Я имею в виду, что я не выходил из системы самостоятельно зарегистрированным пользователям, и я знаю, что после вызова createUser
func, этот createUser func также регистрирует пользователя.
Может быть, приложение выходит из системы, если я создаю нового?тогда почему я не нашел никакой информации об этом поведении (Пожалуйста, если у кого-то есть подсказка, я был бы признателен.