Android.onCreate(com.google.Android.measurement.internal)中的ConcurrentModificationException

Android.onCreate(com.google.Android.measurement.internal)中的ConcurrentModificationException,android,admob,ads,Android,Admob,Ads,最近的崩溃开始在不同设备制造商的每个Android版本上发生。我相信这与广告或谷歌的一个组件有关 我自己在这里提出了一个问题: 有关设备的相关信息(2k用户中,到目前为止,43个用户中有48个例外,发生在3天内) 堆栈跟踪(由于机密性,包名被隐藏): 关于异常的知识:如果一个函数试图修改一个列表,而另一个函数正在迭代该列表,则会发生异常。所以我猜这是两个或更多线程之间的竞争条件 更多详情: 首先,我们不使用任何SimpleArrayMap。所以我确信这个异常与我们的代码没有任何关系 调用com

最近的崩溃开始在不同设备制造商的每个Android版本上发生。我相信这与广告或谷歌的一个组件有关

我自己在这里提出了一个问题:

有关设备的相关信息(2k用户中,到目前为止,43个用户中有48个例外,发生在3天内)

堆栈跟踪(由于机密性,包名被隐藏):

关于异常的知识:如果一个函数试图修改一个列表,而另一个函数正在迭代该列表,则会发生异常。所以我猜这是两个或更多线程之间的竞争条件

更多详情:

首先,我们不使用任何
SimpleArrayMap
。所以我确信这个异常与我们的代码没有任何关系

调用
com.example.myapp.MainActivity.onCreate+35(MainActivity.java:35)
此行指向:

@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState); // stack trace points here

    // rest of the code
}
堆栈跟踪指向
onCreate
,但实际负责人在这里(位于堆栈跟踪的顶部):

现在,有几个细节:该应用程序使用Firebase Analytics、AdMob和各种广告网络,如AppLovin、Ironsource等。。。和应用内计费。我不确定
com.google.android.gms.measurement
到底是什么,但异常的根源似乎就在那里

据我所知,该组件通过使用
Application.registerActivityLifecycleCallbacks
附加了一个截获活动生命周期的对象。现在,大多数库都是这样做的,但我们使用的库都不会导致这样的异常。因此,我不知道如何拦截并继续进行,因为我担心将其包装成一个try-catch看起来不是一个好的“解决方案”。我甚至不确定它是否能解决这种情况,因为我认为在那之后会出现另一个异常,例如
您必须调用Activity.onCreate()

我被难住了,除了在这里问,我不知道该怎么办。我找到的最接近的东西是,但也没有答案

如果有帮助,下面是我们使用的依赖项。(我们的build.gradle文件)


非常感谢您的帮助。

最近的Firebase Analytics library 17.2.2导致了我的问题。如果您使用的是Firebase Analytics,则需要恢复到旧版本的Firebase Analytics,如17.2.1将解决此问题


更新:Firebase似乎在其17.2.3版本上解决了这个问题。

最近的Firebase分析库17.2.2为我解决了这个问题。如果您使用的是Firebase Analytics,则需要恢复到旧版本的Firebase Analytics,如17.2.1将解决此问题


更新:Firebase似乎在其17.2.3版本上解决了这个问题。

这是因为Firebase核心库

更新您的

'com.google.firebase:firebase核心:17.2.1'

'com.google.firebase:firebase核心:17.2.3'


changelog:

它的原因是firebase核心库

更新您的

'com.google.firebase:firebase核心:17.2.1'

'com.google.firebase:firebase核心:17.2.3'


changelog:

可能与google play核心库中的此问题有关。是的,好像是这样。在这个问题上,人们似乎有着相同的例外。不幸的是,甚至没有人被指派去做那件事。谢谢你的链接。我刚刚将构建工具从29.0.3回滚到29.0.2,firebase core和分析从17.2.2回滚到17.2.1,我怀疑是其中一个导致了问题。现在等待着在谷歌play核心库中看到它可能与这个问题有关。是的,好像是这样。在这个问题上,人们似乎有着相同的例外。不幸的是,甚至没有人被指派去做那件事。谢谢你的链接。我刚刚将构建工具从29.0.3回滚到29.0.2,firebase core和分析从17.2.2回滚到17.2.1,我怀疑是其中一个导致了问题。现在等着瞧吧,我相信这也是问题所在。我们已经恢复了版本,如果它影响崩溃,我将接受你的答案。这是正确的答案。版本
17.2.3
的变更日志中包含了一个针对此次崩溃的错误修复:我相信这也是问题所在。我们已经恢复了版本,如果它影响崩溃,我将接受你的答案。这是正确的答案。版本
17.2.3
的变更日志包含此崩溃的错误修复程序:由于您的答案包含Firebase Analytics的更新信息,所以对其进行了升级。由于您的答案包含Firebase Analytics的更新信息,所以对其进行了升级。
@Override
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState); // stack trace points here

    // rest of the code
}
at androidx.collection.SimpleArrayMap.put + 461(SimpleArrayMap.java:461)
at com.google.android.gms.measurement.internal.zzin.zza + 108(zzin.java:108)
at com.google.android.gms.measurement.internal.zzid.onActivityCreated + 11(zzid.java:11)
implementation fileTree(dir: 'libs', include: '*.aar')
implementation 'com.google.firebase:firebase-core:17.2.1'
implementation 'com.google.firebase:firebase-config:19.1.1'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.browser:browser:1.2.0'
implementation 'androidx.legacy:legacy-support-v13:1.0.0'
implementation 'com.google.android.material:material:1.2.0-alpha03'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation 'androidx.annotation:annotation:1.1.0'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-beta3'
implementation 'androidx.preference:preference:1.1.0'
implementation 'com.facebook.stetho:stetho:1.5.0'
implementation 'com.google.android.gms:play-services-base:17.1.0'
implementation 'com.airbnb.android:lottie:3.0.7'
implementation 'com.google.android.play:core:1.6.4'
implementation 'com.github.anrwatchdog:anrwatchdog:1.4.0'
implementation 'com.github.bumptech.glide:glide:4.9.0'
implementation 'com.google.android.gms:play-services-ads:18.3.0'
implementation 'com.google.android.ads:mediation-test-suite:1.2.2'
implementation 'com.squareup.retrofit2:retrofit:2.6.0'
implementation 'com.squareup.retrofit2:converter-gson:2.6.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0'
implementation 'com.google.ads.mediation:applovin:9.8.0.0'
implementation 'com.google.ads.mediation:facebook:5.6.0.0'
implementation 'com.mopub.volley:mopub-volley:2.1.0'
implementation('com.mopub:mopub-sdk:5.7.0@aar') {
    transitive = true
    exclude module: 'libAvid-mopub' // To exclude AVID
    exclude module: 'moat-mobile-app-kit' // To exclude Moat
}
implementation 'com.google.ads.mediation:mopub:5.7.0.0'
implementation 'com.google.ads.mediation:inmobi:7.3.0.0'
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.google.android.gms:play-services-plus:17.0.0'
implementation 'com.google.ads.mediation:tapjoy:12.3.1.0'
implementation 'com.unity3d.ads:unity-ads:3.1.0'
implementation 'com.google.ads.mediation:unity:3.1.0.0'