Как использовать Firebase Authentication с использованием нескольких контроллеров представления? - PullRequest
0 голосов
/ 03 сентября 2018

Я в процессе добавления метода создания нового пользователя для Firebase. Я уже завершил процесс аутентификации SignUp. Однако, когда пользователи создают новую учетную запись. Как мне это сделать, если у меня есть несколько ViewControllers?

Например,

Первый SignUpViewController - пользователю предлагается ввести свой адрес электронной почты.

Когда пользователь нажимает следующий. Затем следует еще один ViewController.

SecondViewControlle - Пользователю предлагается ввести свое имя и создать пароль.

После этого пользователя приветствует страница приветствия с указанным им именем. (Добро пожаловать в «Имя приложения») . Который затем перейдет к домашнему интерфейсу после нажатия кнопки Далее.

Как реализовать Auth.auth().CreateUserwith func, если у меня более одного ViewController? Есть ли способ сохранить электронную почту и пароль, используя два разных ViewControllers?

Обновление **

Я добавил следующий код, который был предложен ниже, однако приложение вылетает каждый раз, когда я нажимаю кнопку «Далее» при вводе вашего «электронного» контроллера просмотра. Я получаю это предупреждение. Кто-нибудь знает, что я сделал не так? Остальная часть кода, кажется, работает нормально. Вот скриншот. enter image description here

1 Ответ

0 голосов
/ 03 сентября 2018

Вы можете сохранить всю информацию в Dictionary и использовать ее во время SignUp. В вашем AppDelegate классе:

/// Instance of AppDelegate
static let shared: AppDelegate = UIApplication.shared.delegate as! AppDelegate

/// Dictionary for user information
var userInformation: Dictionary<String, Any> = [:]

На экране электронной почты - следующее нажатие кнопки

/// #1. Validate the email address
/// #2. Save it in Dictionary
AppDelegate.shared.userInformation["email"] = "xyz@gmail.com" or tFEmail.text.lowercased()

Затем на экране имени и пароля

AppDelegate.shared.userInformation["name"] = "xyz" or tFName.text
AppDelegate.shared.userInformation["password"] = "xxxxxxx" or tFPassword.text

Теперь на последнем экране - нажали кнопку регистрации, вы можете использовать всю эту информацию

let email = AppDelegate.shared.userInformation["email"]
let name = AppDelegate.shared.userInformation["name"]
let password = AppDelegate.shared.userInformation["password"]

Реализовать метод Firebase SignUp и после успешного входа в систему показать экран приветствия.

...