由于缺少初始状态,Firebase 无法处理请求

sha*_*esz 38 mobile android dart firebase flutter

我正在尝试使用电话身份验证,firebase但现在收到此错误。

由于缺少初始状态,无法处理请求。如果浏览器会话存储无法访问或意外清除,则可能会发生这种情况。

这在一周前还有效,现在不再有效。

小智 16

我通过使用 SHA2 向 SafetyNet 注册我的应用程序解决了这个问题。为此,请按照下列步骤操作:

  1. 获取您的 SHA2。如果您不知道如何获取此内容,请按照本教程操作: https://www.youtube.com/watch?v =kLaNnuoqnmA v=kLaNnuoqnmA 注意。此 YouTube 链接适用于 SHA1,但如果您注意的话,您会发现此处将显示 SHA2。
  2. 然后转到 Firebase 控制台,转到“项目设置”>“应用程序检查”。您会注意到您的应用程序是“未注册”。单击此处注册您的应用程序。
  3. 输入您复制的 SHA2 并接受下面的一些条款,然后单击“保存”。您会注意到带有绿色复选图标的“已注册”。

顺便说一句,此错误发生在我的一台设备上,但没有发生在另一台设备上。我也搜索了这个错误,但没有人解决这个问题,包括此页面。当我发送电话号码时获取 OTP 时,我使用 firebase 进行电话身份验证时会发生这种情况。如果您没有 SafetyNet,该应用程序会尝试将您重定向到浏览器以进行 Recaptcha 验证。因此,没有 SafetyNet 将导致您的应用程序始终重定向至 Recaptcha,这有时会导致错误。因此,要解决此问题,请向 Safety Net 注册您的应用程序。要了解这一点,请阅读本文档。 https://firebase.google.com/docs/auth/android/phone-auth?authuser=0 关注2.启用应用程序验证,您会注意到recaptcha只是SafetyNet的替代品。

  • 发现!感谢您提供有效的解决方案。根据记录,我认为您指的是 SHA256 而不是 SHA2。 (3认同)

小智 3

我在使用 iPhone 网络应用程序时遇到了这个问题。我进入“设置”->“Safari”并禁用“防止跨站点跟踪”。