Firebase电话身份验证错误:SMS代码已过期

时间:2017-10-02 09:18:18

标签: android firebase firebase-authentication

根据文档实施了FireBase手机身份验证,我遇到了一些问题。

  1. 某些号码无法通过身份验证:我使用Airtel作为我的服务提供商。
  2. 在日志中,我可以确认代码已经发送但我还没有在手机上收到:

      

    D / PhoneAuthenticating:onCodeSent:AM5PThBss5tbYdpNW5R9Q7o8zOYeHvd7lnZ1KBlS ...

    1. 切换到另一个运营商,我可以收到代码,但之后它说SMS代码在尝试验证后立即过期。我做了更多的尝试,结果是一样的
    2.   

      W / PhoneAuthenticating:signInWithCredential:失败                                                                                     com.google.firebase.auth.FirebaseAuthInvalidCredentialsException:短信代码已过期。请重新发送验证码以重试。                                                                                         在com.google.android.gms.internal.nf.zzK(未知来源)                                                                                         在com.google.android.gms.internal.mg.zza(未知来源)                                                                                         在com.google.android.gms.internal.oa.zzL(未知来源)                                                                                         在com.google.android.gms.internal.oc.onFailure(未知来源)                                                                                         在com.google.android.gms.internal.nj.onTransact(未知来源)                                                                                         在android.os.Binder.execTransact(Binder.java:446)

      抛出此异常:

        

      FirebaseAuthInvalidCredentialsException

      在firebase中,

      代码到期时间超过3599秒。验证所需的时间不到一分钟

2 个答案:

答案 0 :(得分:2)

只是为了使您知道Firebase电话身份验证中有一个自动检索部分,该部分将读取短信并使它在后台失效。该自动检索的回调应该用于对用户进行身份验证,而无需他手动输入短信。

答案 1 :(得分:0)

终于得到了解决方案。 在对用户进行身份验证期间,我们使用相同的方法仅在我们添加新参数时发送代码。

{{1}}