【发布时间】:2022-06-13 16:38:05
【问题描述】:
我创建了一个用作启动器的 Flutter 应用程序。我遇到的问题是,应用程序有时会因此堆栈跟踪而崩溃:
java.lang.RuntimeException:
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3502)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3654)
at android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2116)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loop (Looper.java:223)
at android.app.ActivityThread.main (ActivityThread.java:7720)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:612)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:997)
Caused by: android.os.BadParcelableException:
at android.os.Parcel.readParcelableCreator (Parcel.java:3367)
at android.os.Parcel.readParcelable (Parcel.java:3272)
at android.os.Parcel.readValue (Parcel.java:3174)
at android.os.Parcel.readArrayMapInternal (Parcel.java:3567)
at android.os.BaseBundle.initializeFromParcelLocked (BaseBundle.java:292)
at android.os.BaseBundle.unparcel (BaseBundle.java:236)
at android.os.BaseBundle.getBoolean (BaseBundle.java:935)
at android.app.Activity.restoreHasCurrentPermissionRequest (Activity.java:8297)
at android.app.Activity.performCreate (Activity.java:7996)
at android.app.Activity.performCreate (Activity.java:7984)
at android.app.Instrumentation.callActivityOnCreate (Instrumentation.java:1309)
at android.app.ActivityThread.performLaunchActivity (ActivityThread.java:3475)
at android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:3654)
at android.app.servertransaction.LaunchActivityItem.execute (LaunchActivityItem.java:85)
at android.app.servertransaction.TransactionExecutor.executeCallbacks (TransactionExecutor.java:135)
at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:95)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2116)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loop (Looper.java:223)
at android.app.ActivityThread.main (ActivityThread.java:7720)
at java.lang.reflect.Method.invoke (Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:612)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:997)
崩溃非常随机,我找不到可靠的重现方式。
我发现了类似的报告:
- https://issuetracker.google.com/issues/147246567?pli=1
- https://twitter.com/Piwai/status/1374129312153038849
无论如何,我在 Android 11 设备上看到了这个错误,我很无能,因为:
- 是 Android 问题吗?
- 这是 Flutter 库问题吗?
- 应用程序配置错误?
- 黑魔法?
我使用了最新的几个 Flutter 版本,直到当前的 v3 - 都或多或少有相同数量的崩溃。有没有人可以告诉我下一步该做什么 - 因为我现在很无能为力..
【问题讨论】: