首页 > 解决方案 > AppCompatActivity onCreate 中的 java.util.ConcurrentModificationException

问题描述

我在崩溃日志中看到一堆 ConcurrentModificationException。有没有人遇到过这个?

Caused by java.util.ConcurrentModificationException
       at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
       at java.util.HashMap$ValueIterator.next(HashMap.java:819)
       at androidx.fragment.app.FragmentManager.restoreSaveState(FragmentManager.java:2472)
       at androidx.fragment.app.FragmentController.restoreSaveState(FragmentController.java:196)
       at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:287)
       at androidx.appcompat.app.AppCompatActivity.onCreate(AppCompatActivity.java:106)

标签: androidkotlinandroidx

解决方案


根据这个问题

b/145832397使这个错误成为不可能。1.3.0-alpha01根据发行说明,该修复程序已在 Fragment中发布。

因此,您应该升级到 Fragment 1.3.0(目前仍处于 alpha 阶段)。如果您不能这样做,该错误还提到:

此代码路径仅在您在保存状态后添加保留片段时运行(即,使用commitAllowingStateLoss()or commitNowAllowingStateLoss())。你应该避免这样做。


推荐阅读