java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.next(ArrayList.java:860)
at com.pilot51.voicenotify.AppListFragment.massIgnore(AppListFragment.kt:176)
at com.pilot51.voicenotify.AppListFragment.onMenuItemSelected(AppListFragment.kt:163)
at androidx.core.view.MenuHostHelper.onMenuItemSelected(MenuHostHelper.java:90)
at androidx.activity.ComponentActivity.onMenuItemSelected(ComponentActivity.java:518)
at androidx.fragment.app.FragmentActivity.onMenuItemSelected(FragmentActivity.java:265)
at com.android.internal.policy.PhoneWindow.onMenuItemSelected(PhoneWindow.java:1237)
at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:776)
at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:148)
at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:923)
at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:913)
at com.android.internal.view.menu.MenuPopup.onItemClick(MenuPopup.java:128)
at android.widget.AdapterView.performItemClick(AdapterView.java:318)
at android.widget.AbsListView.performItemClick(AbsListView.java:1159)
at android.widget.AbsListView$PerformClick.run(AbsListView.java:3136)
at android.widget.AbsListView$3.run(AbsListView.java:4052)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6669)
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:858)
Reasons
AppListFragment#massIgnore will use a lateinit field apps. If the field is not fully ready, an exception occurs.
If I click the Ignore All button even more quickly, another expection like lateinit property apps has not been initialized occurs.
Replay
I am sorry that the video is a bit stuck. Installing more apps on the emulator can help you trigger issues more easily.
StackTrace
Reasons
AppListFragment#massIgnore
will use a lateinit fieldapps
. If the field is not fully ready, an exception occurs. If I click theIgnore All
button even more quickly, another expection likelateinit property apps has not been initialized
occurs.Replay
I am sorry that the video is a bit stuck. Installing more apps on the emulator can help you trigger issues more easily.
https://user-images.githubusercontent.com/32957242/231518170-11ecbcb0-e0dd-4ab0-bad0-f4c3df387427.mp4