hCaptcha / hcaptcha-android-sdk

Android SDK for hCaptcha
https://www.hcaptcha.com
MIT License
71 stars 35 forks source link

IllegalStateException: Can not perform this action after onSaveInstanceState #66

Closed Joejoejoe123 closed 2 years ago

Joejoejoe123 commented 2 years ago

androidx.fragment.app.FragmentManager.y FragmentManager.java, line 6 java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState

androidx.fragment.app.FragmentManager.y FragmentManager.java:6 androidx.fragment.app.c.l BackStackRecord.java:14 androidx.fragment.app.c.d BackStackRecord.java:1 androidx.fragment.app.n.dismissInternal DialogFragment.java:21 androidx.fragment.app.n.dismiss DialogFragment.java:1 com.hcaptcha.sdk.HCaptchaWebViewHelper.getConfig SourceFile:2 com.hcaptcha.sdk.HCaptchaJSInterface$b.run android.os.Handler.handleCallback Handler.java:938 android.os.Handler.dispatchMessage Handler.java:99 android.os.Looper.loop Looper.java:246 android.app.ActivityThread.main ActivityThread.java:8633 java.lang.reflect.Method.invoke Method.java com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run RuntimeInit.java:602 com.android.internal.os.ZygoteInit.main ZygoteInit.java:1130

e271828- commented 2 years ago

@Joejoejoe123 Do you have any reproduction details?

CAMOBAP commented 2 years ago

+

@Joejoejoe123 can you confirm that this happens for 3.3.1?

Because per stack-trace it looks like it happens for SDK before https://github.com/hCaptcha/hcaptcha-android-sdk/pull/63 merge

Joejoejoe123 commented 2 years ago

@Joejoejoe123 can you confirm that this happens for 3.3.1?

Because per stack-trace it looks like it happens for SDK before #63 merge

I update com.github.hcaptcha:hcaptcha-android-sdk:3.3.1, but not release. And Check the issue In next version . Thanks

e271828- commented 2 years ago

Hi @Joejoejoe123 , did you check this on the current version?

arnas-savickis-tg commented 2 years ago

we are experiencing something similar, however stack trace is a bit different:

Fatal Exception: java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState at androidx.fragment.app.FragmentManager.checkStateLoss(FragmentManager.java:1601) at androidx.fragment.app.FragmentManager.enqueueAction(FragmentManager.java:1641) at androidx.fragment.app.BackStackRecord.commitInternal(BackStackRecord.java:341) at androidx.fragment.app.BackStackRecord.commit(BackStackRecord.java:306) at androidx.fragment.app.DialogFragment.dismissInternal(DialogFragment.java:376) at androidx.fragment.app.DialogFragment.dismiss(DialogFragment.java:310) at com.hcaptcha.sdk.HCaptchaDialogFragment.onFailure(SourceFile:42) at com.hcaptcha.sdk.HCaptchaJSInterface$2.run(SourceFile:13) 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)

This issue has 67 crash events affecting 58 users during last 7 days. we are using latest version com.github.hcaptcha:hcaptcha-android-sdk:3.3.1

CAMOBAP commented 2 years ago

@arnas-savickis could you please confirm that you are checking analytics for the latest version of your app (or the version which uses com.github.hcaptcha:hcaptcha-android-sdk:3.3.1) in Crashlytics?

I double-checked binary SDK https://jitpack.io/com/github/hCaptcha/hcaptcha-android-sdk/3.3.1/hcaptcha-android-sdk-3.3.1.aar and it contains the fix. SDK doesn't call dismiss on onFailure or onSuccess starting from 3.3.1

arnas-savickis-tg commented 2 years ago

@CAMOBAP double checked, thats true, crashes are coming from version with 3.3.0, sorry for false alarm, will monitor further and will update once more.

CAMOBAP commented 2 years ago

@Joejoejoe123 @arnas-savickis feel free to reopen in case it will repeats