0

In some android devices like android 10 my app crashes when i enter phone number and call following method

PhoneAuthProvider.verifyPhoneNumber(options);

as you can see log report recaptcha activity is not resuming due to some null pointer issue

java.lang.RuntimeException: Unable to resume activity {com.horizam.businessclient/com.google.firebase.auth.internal.RecaptchaActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.android.gms.internal.firebase-auth-api.zzat com.google.android.gms.internal.firebase-auth-api.zzdk.zza()' on a null object reference
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4411)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4443)
        at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:52)
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2147)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:237)
        at android.app.ActivityThread.main(ActivityThread.java:7814)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.android.gms.internal.firebase-auth-api.zzat com.google.android.gms.internal.firebase-auth-api.zzdk.zza()' on a null object reference
        at com.google.firebase.auth.internal.zzk.zzb(com.google.firebase:firebase-auth@@20.0.1:2)
        at com.google.firebase.auth.internal.RecaptchaActivity.zzd(com.google.firebase:firebase-auth@@20.0.1:10)
        at com.google.android.gms.internal.firebase-auth-api.zzth.<init>(com.google.firebase:firebase-auth@@20.0.1:13)
        at com.google.firebase.auth.internal.RecaptchaActivity.onResume(com.google.firebase:firebase-auth@@20.0.1:43)
        at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1454)
        at android.app.Activity.performResume(Activity.java:8103)
        at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4401)
        at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4443) 
        at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:52) 
        at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176) 
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2147) 
        at android.os.Handler.dispatchMessage(Handler.java:107) 
        at android.os.Looper.loop(Looper.java:237) 
        at android.app.ActivityThread.main(ActivityThread.java:7814) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1075)

Thanks in advance if you sort this out for me.

Programmer007
  • 181
  • 12
  • Does this answer your question? [Error while doing phone authentication on firebase](https://stackoverflow.com/questions/64605057/error-while-doing-phone-authentication-on-firebase) – mustangDC Jan 23 '21 at 14:34
  • @mustangDC No, I have added androidx browser dependency but it did not solve my problem. And it occurs only on android 10 device. Recaptcha Screen does not show instead crash happens. – Programmer007 Jan 25 '21 at 13:19
  • https://firebase.google.com/docs/auth/android/phone-auth#enable-app-verification. Please go through `Enable app verification` point – mustangDC Jan 25 '21 at 15:32
  • I followed developers documentation thoroughly and it is working fine on almost all devices but not on Android 10 – Programmer007 Jan 27 '21 at 08:00

1 Answers1

0

Okay I found solution to this problem. There was nothing wrong with code. It was Android Device that was not allowing browser to open to show Recaptcha screen. It is working now perfectly.

Programmer007
  • 181
  • 12
  • What was the problem exactly. We would appreciate it if we can know the exact issue – mustangDC Jan 27 '21 at 09:22
  • Cool to know that it's only on specific devices but is there any way to handle those specific devices to make it work and not crash?.. – Itay Feldman Jan 27 '21 at 12:30
  • @mustangDC crash occurred on Samsung galaxy m11. As I entered phone number clicked authenticate. It crashed immediately and did not open captcha screen. Log displayed above issue. I tried everything like safetyNet etc but it would not go. Eventually it started working. All I know it was caused by Android 10 version. – Programmer007 Feb 01 '21 at 14:36
  • 1
    @ItayFeldman You can check if device allows to open bowser if not then you should catch that error and show it to user or go with SafetyNet to skip captcha screen. – Programmer007 Feb 01 '21 at 14:39