Auth.auth().currentUser?.reload() 不会刷新 currentUser.isEmailVerified

2023-12-09

我正在尝试使用 Firebase 实施电子邮件验证。我已经创建了成功重定向到我的应用程序的动态链接。我也在网上测试了该链接。它工作完美并且可以验证电子邮件。但是,验证电子邮件上的链接将我重定向到我的应用程序,Auth.auth().currentUser.isEmailVerified 仍然给我 false,即使我事先运行了 Auth.auth().currentUser?.reload() 命令。

对此有什么帮助吗?


您可以像这样设置计时器:

var verificationTimer : Timer = Timer()    // Timer's  Global declaration

self.verificationTimer = Timer.scheduledTimer(timeInterval: 1, target: self, selector: #selector(LoginViewController.checkIfTheEmailIsVerified) , userInfo: nil, repeats: true)

然后使用此函数重复检查用户的当前状态:

func checkIfTheEmailIsVerified(){

    FIRAuth.auth()?.currentUser?.reload(completion: { (err) in
        if err == nil{

            if FIRAuth.auth()!.currentUser!.isEmailVerified{

                let feedVCScene = self.navigationController?.storyboard?.instantiateViewController(withIdentifier: "ViewControllerVC_ID") as! ViewController
                self.verificationTimer.invalidate()     //Kill the timer
                self.navigationController?.pushViewController(feedVCScene, animated: true)
                // Segueing to the next view(i prefer the instantiation method).
            } else {

                print("It aint verified yet")

            }
        } else {

            print(err?.localizedDescription)

        }
    })

}

希望这可以帮助 :)

Source: https://stackoverflow.com/a/40037547/6596799

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Auth.auth().currentUser?.reload() 不会刷新 currentUser.isEmailVerified 的相关文章

随机推荐

  • 将目录添加到 $LOAD_PATH (Ruby)

    我见过两种常用的技术 用于将当前正在执行的文件的目录添加到 LOAD PATH 或 我看到了这样做的好处 以防您不使用 gem 显然 其中一个似乎比另一个更冗长 但是有理由选择其中一个而不是另一个吗 第一种冗长的方法 可能有点矫枉过正 LO
  • WEKA & MySQL 设置连接

    WEKA Explorer 无法打开与 MySQL 的连接 连接到 jdbc mysql MYSERVER 3306 NAME true 顺便说一句 mysql驱动程序已下载 mysql connector java 5 1 14 bin
  • 为什么使用 python split 时字符串会发生变化?

    test str Question The cryptocurrency Bitcoin Cash BCH USD settled at 1368 USD at 07 00 AM UTC at the Bitfinex exchange o
  • 简单java程序中的意外结果

    我是java新手 我的问题是按下一个键后输出显示2个数字 我不明白为什么 这是代码 class ForTest public static void main String args throws java io IOException i
  • 使用 zend-decorator 格式化表列中的 Zend_Form_Element_Radio 和行中的其他 Zend Form 元素

    我想用装饰者将以下 Zend Form 格式化为表格 将描述放在第一列中and第二列中的 Zend Form Element Radio 选项and add 2 select正如您在后面的 html 示例中看到的那样 在每一行中 我需要一个
  • 如何在C++中将文件编码格式设置为UTF8

    我的软件的要求是包含导出数据的文件的编码应为 UTF8 但是当我将数据写入文件时 编码始终是 ANSI 我使用 Notepad 来检查这一点 我目前正在做的是尝试通过读取文件来手动转换文件 将其转换为 UTF8 并将文本写入新文件 line
  • Java ServletContext

    我有一个 JSP 网站 而不是 Spring MVC 它有一个配置文件 web xml 我想要获取 web xml 文件中的一些设置 但是 我想从 源包 文件夹中的类中访问这些设置 我知道我可以将 ServletContext 从 JSP
  • 验证空手道框架中的浮点值范围

    我的场景是检查字段是否接受 0 01 到 25000 的范围 它可以是十进制值 在空手道框架中执行此操作的方法是什么 我使用了下面的正则表达式 这是不正确的 正则表达式 0 9 只需乘以 1 即可将字符串转换为数字 def foo 0 2
  • 在 R 中工作时分离所有包

    在努力解决另一个问题时 我遇到了这个问题 我可以通过以下方式删除所有 R 对象 rm list ls all TRUE 是否有等效的命令可以在工作会话期间分离已安装的软件包 gt sessionInfo R version 2 12 2 2
  • 无法添加 DLL 引用到 VS 2008

    我想知道是否有人可以帮助我 我正在尝试在 VB Net 3 5 应用程序中添加对 LAME MP3 编码器的引用 我使用的 DLL lame enc dll v3 98 2 是从这里下载的 http rarewares org mp3 la
  • 如何对后续行进行分组(基于标准)然后对它们进行计数 [MySQL]?

    假设我有这样一个表 按日期排序 id name type date 1 A 1 01 08 2012 2 A 2 01 08 2012 3 B 1 02 09 2012 4 A 1 01 10 2012 5 A 4 01 10 2012 6
  • 卸载并再次安装应用程序时,Firebase 身份验证返回特定用户

    我有一个问题 我在我的应用程序中使用 google 登录 Firebase 假设有3个用户X Y and Z我曾与谁一起登录我的应用程序 我用于检查用户是否登录的代码 FirebaseAuth mAuth FirebaseAuth getI
  • Foundation 均衡器插头 + BS 3.2?

    尝试使用均衡器插件 但 id 不起作用 并且没有错误 它看起来像http goo gl OvKy1g 这是一个页面http goo gl INMqUL 我需要为其添加一些 css 吗 您可以将 Foundation Equalize 插件与
  • 如何使用 SQL 参数

    我正在尝试为我正在制作的一个简单游戏创建一个数据库 但在查询玩家统计数据时遇到问题 至此数据库可以进行搜索和更新 但是只有修改实际代码才能改变搜索词 到目前为止的整个代码 对任何缩进错误表示歉意 Importing modules impo
  • NHibernate 和拦截器 - 测量/监控 SQL 往返时间

    为了获得缓慢或潜在缓慢区域的早期警告 我希望有一个 NHibernate 拦截器 它可以充当性能监视器 以便任何花费超过给定时间的数据库操作都会引发一个事件并且 重要的是 应用程序日志中的完整堆栈跟踪 拦截器似乎是了解这一点的一个很好的窗口
  • 在多个字符串中查找完全相同的字符串

    下面的例子 我有一个像这样的数组 Array 0 gt vlakke lasflenzen PN6 1 gt vlakke lasflenzen PN10 2 gt vlakke lasflenzen PN16 3 gt vlakke la
  • LLVM 将 pthread 函数调用插入到 IR 中

    我正在写一个 LLVM 通行证 它是LoopPass 需要将 pthread create 和 pthread join 等 pthread 函数调用插入到 IR 中 我知道如何创建函数调用并将其插入到 IR 中 但我无法获取 pthrea
  • 如何在 sqlalchemy 表达式语言中设置 DEFERRED 约束?

    我有一个表 我们称之为 table A 它有一个引用 table B 的外键 Table B 还有一个引用 table A 的外键 要为 table A 插入一条记录 我必须将外键约束配置为最初延迟 我试图首先创建table A 第二次创建
  • 使用 Zurb Foundation 滚动过去时,粘性顶部栏会使页面跳转

    我的网站使用 Zurb Foundation 4 框架 我想要一个位于标题下方的导航栏 当您滚动过去时 该导航栏会粘在页面顶部 这工作得很好 除了当顶部栏粘在页面顶部时页面内容会向上跳跃约 45 像素 尽管这是一个不同的导航元素 但可以在此
  • Auth.auth().currentUser?.reload() 不会刷新 currentUser.isEmailVerified

    我正在尝试使用 Firebase 实施电子邮件验证 我已经创建了成功重定向到我的应用程序的动态链接 我也在网上测试了该链接 它工作完美并且可以验证电子邮件 但是 验证电子邮件上的链接将我重定向到我的应用程序 Auth auth curren