菜鸟教程小白 发表于 2022-12-13 01:21:16

ios - Firebase Auth stateListener 有必要吗?


                                            <p><p>在我的 iPhone 应用程序的主屏幕中,我需要检查用户是否已登录。在我的 <code>viewDidAppear()</code> 我这样检查:</p>

<pre><code>override func viewDidAppear(_ animated: Bool) {
   if let user = FIRAuth.auth()?.currentUser {
       // user is logged in
   } else {
       // user not logged in, send to home page
       self.performSegue(withIdentifier: &#34;NotLoggedInSegue&#34;, sender: self)
   }
}
</code></pre>

<p>在每个在线示例中,我看到人们在他们的代码中使用 <code>FIRAuth.auth()?.addStateDidChangeListener</code>。如果我的应用程序的唯一身份验证是通过 gmail 进行的,我是否需要它或者我正在检查用户是否正常登录的方式?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您编写的代码是正确的,但只有在调用 view did 方法时才会调用它,因此假设在 viewDidAppear 身份验证 token 过期并且该屏幕上的用户正在访问 FIRAuth.auth.currentuser 中的几个值,这将返回 nil </p>

<p>尽管每当身份验证发生状态变化时都会调用 FIRAuth.auth()?.addStateDidChangeListener()。</p>

<pre><code>handle = FIRAuth.auth()?.addStateDidChangeListener() { (auth, user) in
// ...
}
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于ios - Firebase Auth stateListener 有必要吗?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/43601137/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/43601137/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - Firebase Auth stateListener 有必要吗?