如何解决当我使用 SMS User Consent API 时 FirebasePhoneAuth 崩溃
如果我向我的手机发送短信,那么短信用户同意 API 收到的短信很好。
如果我通过 FirebaseAuth 向我的手机发送短信,那么短信成功就会发送到我的设备上。
但是当我使用 Firevase 发送 SMS 并尝试使用 SMS User Consent API 捕获它时,我崩溃了
02-05 08:47:05.119 packege 26223 - E AndroidRuntime FATAL EXCEPTION: main
02-05 08:47:05.119 packege 26223 - E AndroidRuntime Process: packege,PID: 26223
02-05 08:47:05.119 packege 26223 - E AndroidRuntime java.lang.RuntimeException: Error receiving broadcast Intent { act=com.google.android.gms.auth.api.phone.SMS_RETRIEVED flg=0x200010 pkg=packege (has extras) } in com.google.firebase.auth.api.internal.zzgn@19feaf8
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.app.LoadedApk$Receiverdispatcher$Args.lambda$getRunnable$0$LoadedApk$Receiverdispatcher$Args(LoadedApk.java:1656)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.app.-$$Lambda$LoadedApk$Receiverdispatcher$Args$_BumDX2UKsnxLVrE6UJsJZkotuA.run(UnkNown Source:2)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.os.Handler.handleCallback(Handler.java:883)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.os.Handler.dispatchMessage(Handler.java:100)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.os.Looper.loop(Looper.java:237)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.app.ActivityThread.main(ActivityThread.java:8016)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at java.lang.reflect.Method.invoke(Native Method)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1076)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime Caused by: java.lang.NullPointerException: Attempt to invoke interface method 'int java.lang.CharSequence.length()' on a null object reference
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at java.util.regex.Matcher.reset(Matcher.java:280)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at java.util.regex.Matcher.<init>(Matcher.java:186)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at java.util.regex.Pattern.matcher(Pattern.java:1034)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at com.google.firebase.auth.api.internal.zzgj.zzc(com.google.firebase:firebase-auth@@20.0.0:112)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at com.google.firebase.auth.api.internal.zzgn.onReceive(com.google.firebase:firebase-auth@@20.0.0:13)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime at android.app.LoadedApk$Receiverdispatcher$Args.lambda$getRunnable$0$LoadedApk$Receiverdispatcher$Args(LoadedApk.java:1646)
02-05 08:47:05.119 packege 26223 - E AndroidRuntime ... 8 more
我尝试在活动开始时运行 SMS User Consent API,在 Firebase 发送短信之后,在 Firebase 发送之前,在 Firebase 发送延迟之后,总是崩溃:(
这就是我设置短信用户同意 API 的方式 SMS User Consent API setup1 SMS User Consent API setup2 SMS User Consent API setup3
这就是我设置 FirebasePhoneAuth 的方式 FirebasePhoneAuth setup1 FirebasePhoneAuth setup2
再一次,我分别重复一遍,两者都运行良好,但它们一起崩溃了!
源代码https://github.com/StenleyDuFoster/ExampleFirebasePhoneAuthWithOneTapVerificationApi
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。