【发布时间】:2021-12-23 05:59:35
【问题描述】:
我想使用 Firebase 身份验证进行电子邮件/密码注册。问题是我只想在使用的电子邮件地址也经过验证时接受用户身份验证。
通常我们可以使用监听器来检查用户何时登录或不再登录:
Auth.auth().addStateDidChangeListener { (auth, user) in
问题是当用户单击验证电子邮件中的链接时,不会触发此侦听器。只有在创建帐户后才会调用它。
在等待用户点击链接时循环执行以下操作:
Auth.auth().currentUser!.reload() {
if !Auth.auth().currentUser!.isEmailVerified {
但问题是我理想情况下想要管理侦听器回调中的所有身份验证内容,但是当电子邮件验证状态发生变化时不使用侦听器。
我有什么遗漏吗?
我知道在移动设备上您可以使用深度链接,因此邮件中的链接会再次打开应用程序,但这不是我想要的,因为用户可以在他们的计算机上打开邮件,所以问题仍然需要解决。
目前我看到的唯一解决方案是自己发送一个 nsnotification 并在我处理所有身份验证代码的地方处理它,但感觉有点混乱。
【问题讨论】:
标签: ios firebase firebase-authentication