我目前正在使用Firebase制作一个小型登录应用。我目前在登录页面遇到问题。
当我的用户已经登录时,当他们打开应用程序时,我想更改初始视图控制器,以便用户可以直接进入主页。
所以我的问题是,为了做到这一点,我必须执行哪些代码?
override func viewDidLoad() {
super.viewDidLoad()
if FIRAuth.auth() ? .currentUser ? .uid == nil {
notLoggedIn()
}
}
func notLoggedIn() {
let storyBoard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let nextViewController = storyBoard.instantiateViewController(withIdentifier: "Startpage") as!ViewController
self.present(nextViewController, animated: true, completion: nil)
}
答案 0 :(得分:1)
你可以使用这行代码。
请记住,您应该添加带有标识符的故事板引用 根据您的需要分别命名 - goToLogin - 就我而言。
希望对大家有帮助。
override func viewDidLoad() {
super.viewDidLoad()
Auth.auth().addStateDidChangeListener { auth, user in
if let user = user {
// User is signed in.
print("user signed in")
//Add the rest of the code here because after passig the caluses
// viewdidload will call another funxtions to it can crash
} else {
// User not signed in
self.performSegue(withIdentifier: "goToLogin", sender: Any?.self)
}
}
}