Extension-firebase-analytics and extension-admob conflict

Use extension-firebase-analytics and extension-admob together,the android bundle compile error

My project have add the below dependencies:
extension-firebase-1.4.1.zip
extension-firebase-analytics-2.2.1.zip
extension-admob-3.1.2.zip

When I bundle the android application, it give me the comple error:


d8 --main-dex-list /tmp/job1004181355963694416/build/main_dex_list.txt --output /tmp/job1004181355963694416/build --release --lib /opt/platformsdk/android/android-sdk-linux/platforms/android-33/android.jar /var/extender/sdk/7a608d3ce6ed895d484956c1e76110ed8b78422a/defoldsdk//ext/share/java/android-support-multidex.jar /var/extender/sdk/7a608d3ce6ed895d484956c1e76110ed8b78422a/defoldsdk//ext/share/java/androidx-multidex.jar /var/extender/sdk/7a608d3ce6ed895d484956c1e76110ed8b78422a/defoldsdk//share/java/glfw_android.jar /var/extender/sdk/7a608d3ce6ed895d484956c1e76110ed8b78422a/defoldsdk//share/java/gamesys_android.jar /var/extender/sdk/7a608d3ce6ed895d484956c1e76110ed8b78422a/defoldsdk//share/java/sound_android.jar /tmp/.gradle/unpacked/androidx.startup-startup-runtime-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.loader-loader-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.slidingpanelayout-slidingpanelayout-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-stats-17.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-common-19.5.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.room-room-runtime-2.2.5.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-impl-18.0.3.aar/classes.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-livedata-core-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.room-room-common-2.2.5.jar /tmp/.gradle/unpacked/androidx.customview-customview-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.work-work-runtime-2.7.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-tasks-18.0.1.aar/classes.jar /tmp/.gradle/unpacked/androidx.arch.core-core-common-2.1.0.jar /tmp/.gradle/unpacked/androidx.arch.core-core-runtime-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-installations-16.3.5.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-analytics-18.0.3.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-ads-lite-21.3.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-ads-identifier-18.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-ads-base-21.3.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.collection-collection-1.1.0.jar /tmp/.gradle/unpacked/androidx.drawerlayout-drawerlayout-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.documentfile-documentfile-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-installations-interop-16.0.1.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-measurement-connector-18.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-api-18.0.3.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.ump-user-messaging-platform-2.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.concurrent-concurrent-futures-1.0.0.jar /tmp/.gradle/unpacked/androidx.swiperefreshlayout-swiperefreshlayout-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-service-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-annotations-16.0.0.jar /tmp/.gradle/unpacked/androidx.sqlite-sqlite-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.coordinatorlayout-coordinatorlayout-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-base-18.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.legacy-legacy-support-core-ui-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.annotation-annotation-experimental-1.1.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.tracing-tracing-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-basement-18.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.core-core-1.6.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.versionedparcelable-versionedparcelable-1.1.1.aar/classes.jar /tmp/.gradle/unpacked/androidx.interpolator-interpolator-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.viewpager-viewpager-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.legacy-legacy-support-core-utils-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-sdk-api-20.1.2.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-base-20.1.2.aar/classes.jar /tmp/.gradle/unpacked/com.google.firebase-firebase-components-16.1.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-runtime-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.asynclayoutinflater-asynclayoutinflater-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.sqlite-sqlite-framework-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-sdk-18.0.3.aar/classes.jar /tmp/.gradle/unpacked/androidx.localbroadcastmanager-localbroadcastmanager-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.fragment-fragment-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.cursoradapter-cursoradapter-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-appset-16.0.1.aar/classes.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-viewmodel-2.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-common-2.1.0.jar /tmp/.gradle/unpacked/androidx.browser-browser-1.4.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.print-print-1.0.0.aar/classes.jar /tmp/.gradle/unpacked/androidx.annotation-annotation-1.2.0.jar /tmp/.gradle/unpacked/com.google.guava-listenablefuture-1.0.jar /tmp/.gradle/unpacked/androidx.lifecycle-lifecycle-livedata-2.1.0.aar/classes.jar /tmp/.gradle/unpacked/com.google.android.gms-play-services-ads-21.3.0.aar/classes.jar /tmp/job1004181355963694416/build/tmp0rjava/R.jar /tmp/job1004181355963694416/build/tmp1javac/output.jar 
Error in /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class:
Type com.google.android.gms.internal.measurement.zzbu is defined multiple times: /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class, /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-sdk-api-20.1.2.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class
Compilation failed
Exception in thread "main" java.lang.RuntimeException: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class
	at com.android.tools.r8.utils.w.a(SourceFile:92)
	at com.android.tools.r8.D8.main(D8.java:4)
Caused by: com.android.tools.r8.CompilationFailedException: Compilation failed to complete, origin: /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class
	at Version.fakeStackEntry(Version_3.0.41-sc03.java:0)
	at com.android.tools.r8.utils.w.a(SourceFile:68)
	at com.android.tools.r8.utils.w.a(SourceFile:28)
	at com.android.tools.r8.utils.w.a(SourceFile:27)
	at com.android.tools.r8.utils.w.b(SourceFile:3)
	at com.android.tools.r8.D8.a(D8.java:17)
	at com.android.tools.r8.D8.a(D8.java:15)
	at com.android.tools.r8.utils.w.a(SourceFile:84)
	... 1 more
Caused by: com.android.tools.r8.internal.b: Type com.google.android.gms.internal.measurement.zzbu is defined multiple times: /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-18.0.3.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class, /tmp/.gradle/unpacked/com.google.android.gms-play-services-measurement-sdk-api-20.1.2.aar/classes.jar:com/google/android/gms/internal/measurement/zzbu.class
	at com.android.tools.r8.internal.TA.a(SourceFile:14)
	at com.android.tools.r8.internal.TA.a(SourceFile:22)
	at com.android.tools.r8.internal.Ew.b(SourceFile:6)
	at com.android.tools.r8.internal.Ew.a(SourceFile:23)
	at com.android.tools.r8.internal.Ew.a(SourceFile:10)
	at java.base/java.util.concurrent.ConcurrentHashMap.merge(ConcurrentHashMap.java:2048)
	at com.android.tools.r8.internal.Ew.a(SourceFile:6)
	at com.android.tools.r8.graph.I0$c.f(SourceFile:3)
	at com.android.tools.r8.dex.a.a(SourceFile:94)
	at com.android.tools.r8.dex.a.a(SourceFile:23)
	at com.android.tools.r8.D8.a(D8.java:21)
	at com.android.tools.r8.D8.d(D8.java:6)
	at com.android.tools.r8.D8.c(D8.java:1)
	at com.android.tools.r8.utils.w.a(SourceFile:24)
	... 5 more

Do i miss something in doc? Any help is welcome.

It’s a compatibility issue between the versions of the Freebase extension and the AdMob extension.

Next week, we will try to find time to update Firebase to a newer version. In the meantime, you can copy-paste the Firebase extension into your project and change the Google Play Services version in the Gradle file. Alternatively, you can fully remove GPS as a dependency in Firebase to ensure that you are using the version AdMob needs.

I can’t guarantee it 100%, but that should help.

1 Like

Thanks, I will try that