java - Firebase Auth,在验证手机身份验证时崩溃,android
问题描述
我的应用程序在验证手机身份验证时崩溃,成功接收短信但在单击验证按钮时崩溃,并非所有设备,来自 Play 商店的 20% 设备都崩溃了。这是来自 Play 管理中心的日志。
java.lang.IllegalArgumentException:
at com.google.android.gms.common.internal.Preconditions.checkArgument (Preconditions.java:9)
at com.google.firebase.auth.PhoneAuthCredential.<init> (PhoneAuthCredential.java:60)
at com.google.firebase.auth.PhoneAuthCredential.zza (PhoneAuthCredential.java:10)
at com.google.firebase.auth.PhoneAuthProvider.getCredential (PhoneAuthProvider.java:2)
at com.udaan.recstudentportalV2.VerifyMobile.matchOtp (VerifyMobile.java:2)
at com.udaan.recstudentportalV2.VerifyMobile.access$200 (VerifyMobile.java:2)
at com.udaan.recstudentportalV2.VerifyMobile$3.onClick (VerifyMobile.java:2)
at android.view.View.performClick (View.java:7862)
at android.widget.TextView.performClick (TextView.java:15004)
at com.google.android.material.button.MaterialButton.performClick (MaterialButton.java:3)
at android.view.View.performClickInternal (View.java:7831)
at android.view.View.access$3600 (View.java:879)
at android.view.View$PerformClick.run (View.java:29359)
at android.os.Handler.handleCallback (Handler.java:883)
at android.os.Handler.dispatchMessage (Handler.java:100)
at android.os.Looper.loop (Looper.java:237)
at android.app.ActivityThread.main (ActivityThread.java:8167)
at java.lang.reflect.Method.invoke (Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1100)
任何帮助都将不胜感激。
解决方案
通过重新创建该问题已解决。当用户在发送 OTP 之前单击验证按钮时会发生这种情况。在调用 getCredential() 方法之前初步检查是否发送了 OTP 将有助于纠正此问题。
推荐阅读
- python - 如何使用 Google 的 Python Drive Client API 在 Team Drive 中创建文件夹?
- mysql - 如何确定是否有超过 4 行的值?(业余)
- .net - 无法推送 Nuget 的 GitHub 包
- c# - 获取几个 int 参数的最大值
- python - 如何缩短接收训练样本的运行时间?
- reactjs - 在道具中传递对象,使用打字稿的reactjs
- erlang - 如何使 genserver 以频率值运行 Elixir
- python - 在 groupby 之后在每个组中进行更改
- menu - UI5 控件(菜单、活动表、..)openBy 不显示溢出工具栏(取决于 UI5 版本)
- excel - 喜欢的地方(SQL)VBA