ankidroid / Anki-Android

AnkiDroid: Anki flashcards on Android. Your secret trick to achieve superhuman information retention.
GNU General Public License v3.0
8.59k stars 2.22k forks source link

[Bug] Crash: Support AnkiDroid dialog - Don't keep activities #10944

Closed BrayanDSO closed 2 years ago

BrayanDSO commented 2 years ago
Reproduction Steps
  1. Have Don't keep activities enabled
  2. Open Support AnkiDroid dialog (on the navigation drawer)
  3. Minimize the app
  4. Open it again
Expected Result

No crashes

Actual Result

Crash

Debug info
AnkiDroid Version = 2.16alpha60

Android Version = 12

Manufacturer = samsung

Model = SM-N770F

Hardware = exynos9810

Webview User Agent = Mozilla/5.0 (Linux; Android 12; SM-N770F Build/SP1A.210812.016; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/100.0.4896.88 Mobile Safari/537.36

ACRA UUID = 037bbc86-38a4-4ad7-9c42-05870e9b6086

Scheduler = std2

Crash Reports Enabled = true

DatabaseV2 Enabled = true
Research

Enter an [x] character to confirm the points below:

BrayanDSO commented 2 years ago

https://user-images.githubusercontent.com/69634269/163864709-d5868809-732c-4434-8581-38f7d119031f.mp4

david-allison commented 2 years ago

https://couchdb.ankidroid.org/acralyzer/_design/acralyzer/index.html#/reports-browser/user/037bbc86-38a4-4ad7-9c42-05870e9b6086

android.os.BadParcelableException: Parcelable protocol requires a Parcelable.Creator object called CREATOR on class com.ichi2.anki.dialogs.HelpDialog$LinkItem
at android.os.Parcel.readParcelableCreator(Parcel.java:3431)
at android.os.Parcel.readParcelable(Parcel.java:3336)
at android.os.Parcel.readValue(Parcel.java:3238)
at android.os.Parcel.readListInternal(Parcel.java:3698)
at android.os.Parcel.readArrayList(Parcel.java:2822)
at android.os.Parcel.readValue(Parcel.java:3259)
at android.os.Parcel.readArrayMapInternal(Parcel.java:3635)
at android.os.BaseBundle.initializeFromParcelLocked(BaseBundle.java:292)
at android.os.BaseBundle.unparcel(BaseBundle.java:236)
at android.os.Bundle.getParcelableArrayList(Bundle.java:1056)
at com.ichi2.anki.dialogs.RecursivePictureMenu.onCreateDialog(RecursivePictureMenu.kt:1)
at androidx.fragment.app.DialogFragment.prepareDialog(DialogFragment.java:4)
at androidx.fragment.app.DialogFragment.onGetLayoutInflater(DialogFragment.java:3)
at androidx.fragment.app.Fragment.performGetLayoutInflater(Fragment.java:1)
at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:4)
at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:20)
at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:3)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:5)
at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3)
at androidx.fragment.app.FragmentManager.dispatchActivityCreated(FragmentManager.java:4)
at androidx.fragment.app.FragmentController.dispatchActivityCreated(FragmentController.java:1)
at androidx.fragment.app.FragmentActivity.onStart(FragmentActivity.java:6)
at androidx.appcompat.app.AppCompatActivity.onStart(AppCompatActivity.java:1)
at com.ichi2.anki.AnkiActivity.onStart(AnkiActivity.java:2)
at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1455)
at android.app.Activity.performStart(Activity.java:8307)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:4056)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:221)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:201)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:173)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2434)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:226)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8633)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:567)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1133)
Caused by: java.lang.NoSuchFieldException: CREATOR
at java.lang.Class.getField(Class.java:1635)
at android.os.Parcel.readParcelableCreator(Parcel.java:3408)
... 38 more