使用BottomsheetDialogFragment在onSaveInstanceState之后不能执行此操作吗?

问题描述 投票:2回答:1

[我正在使用BottomsheetDialogFragment,最近正在获取关于crashlytics的崩溃报告,堆栈跟踪为-

致命异常:java.lang.IllegalStateException:无法执行此操作onSaveInstanceState之后的操作在android.support.v4.app.FragmentManagerImpl.checkStateLoss(FragmentManager.java:2044)在android.support.v4.app.FragmentManagerImpl.enqueueAction(FragmentManager.java:2067)在android.support.v4.app.BackStackRecord.commitInternal(BackStackRecord.java:680)在android.support.v4.app.BackStackRecord.commit(BackStackRecord.java:634)在android.support.v4.app.DialogFragment.dismissInternal(DialogFragment.java:205)在android.support.v4.app.DialogFragment.dismiss(DialogFragment.java:171)在com.khaalijeb.inkdrops.ListBanks.onSuccessResponse(ListBanks.java:322)在com.khaalijeb.inkdrops.App.onSuccessResponse(App.java:800)在com.olive.upi.OliveUpiManager.onSuccessResponse(未知来源:970)at com.olive.upi.transport.d $ 33.onResponse(来源:16)在retrofit2.ExecutorCallAdapterFactory $ ExecutorCallbackCall $ 1 $ 1.run(ExecutorCallAdapterFactory.java:68)在android.os.Handler.handleCallback(Handler.java:789)在android.os.Handler.dispatchMessage(Handler.java:98)在android.os.Looper.loop(Looper.java:169)在android.app.ActivityThread.main(ActivityThread.java:6595)在java.lang.reflect.Method.invoke(Method.java)在com.android.internal.os.Zygote $ MethodAndArgsCaller.run(Zygote.java:240)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)

我不知道是什么原因导致此错误,因为该错误不是在某些设备中而且不是所有设备中都发生。有没有人较早地面对过这个问题,以及如何克服它?

我已经对该特定代码进行了1000次测试,但没有得到通过,但是在生产环境中,我在大约2 3 3个设备中遇到此错误。

如何调用commitAllowingStateLoss();?这会解决问题吗?

android android-fragments android-dialogfragment bottom-sheet
1个回答
0
投票
© www.soinside.com 2019 - 2024. All rights reserved.