删除应用程序后,IOS-Swift-Firebase身份验证令牌会持续

时间:2018-03-08 15:10:20

标签: ios swift firebase firebase-authentication

我需要帮助解决这个问题。我正在模拟用户已删除应用并从Firebase中经过身份验证的用户中删除然后重新安装该应用的情况。

再次重新安装应用后,请拨打以下电话:

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)


    Auth.auth().addStateDidChangeListener { auth, user in
        if user != nil {
            // User is signed in. Show home screen

return user!= nil,这样用户无需身份验证即可在主VC上重定向,无权执行此操作。

几个小时后,同一个呼叫报告user == nil提示输入auth VC。

我怀疑这是由于Auth令牌需要时间才能到期。 如何以干净的方式处理这种情况并确保如果用户在Firebase上没有身份验证,则需要将其重定向到auth VC?

我正在使用phonenumber auth,只要这很重要。

感谢。

1 个答案:

答案 0 :(得分:1)

根据Firebase文档:Firebase

注册令牌可能会在以下情况下发生变化:

  • 该应用已在新设备上恢复
  • 用户卸载/重新安装应用
  • 用户清除应用数据。

根据该逻辑,每次将firebase令牌发送到后端并且您发现user1已更改令牌时,您可以假设他重新安装了应用程序,因此将其发送到您认为合适的视图控制器,现在就您的问题而言用户最终报告nil,这听起来像是一个关于如何保存数据的问题,而不是火山问题本身,你是否将用户保存在数据库中?用户默认值?检查你的实施。