Hi,
I'm trying to get Firebase Analytics and this Play Games package working together, but I am hitting errors in my project. To simplify things, I got the Firebase Analytics sample app here and was able to reproduce the error.
Unity version: 5.6.2p4
Firebase version: 4.1.0
Play Games plugin version: 0.9.40
Unity Jar Resolver version: 1.2.46.0
Error message
stderr[
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/auth/api/signin/internal/zzm;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/auth/api/signin/zzc;
2 errors; aborting
Steps to repro:
Also confirmed - I am able to build a clean project with just the GPG plugin imported.
Let me know if I can provide more info. Thank you.
Can you share the list of files in Assets/Plugins/Android? You should have only one version of the files. It sounds like you might have two versions of an old version of something like play-services-base and a newer version of play-services-auth?
I have same problem. I used GPGS 0.9.40 and Firebase 4.1.0.
Entire log:
CommandInvokationFailure: Unable to convert classes into dex format.
C:/Program Files/Java/jdk1.8.0_11\bin\java.exe -Xmx2048M -Dcom.android.sdkmanager.toolsdir="F:/Android/android-sdk\tools" -Dfile.encoding=UTF8 -jar "C:\Program Files\Unity5.5.3\Editor\Data\PlaybackEngines\AndroidPlayer/Tools\sdktools.jar" -
stderr[
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzns;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznt;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznu;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznv;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznw;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbz;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznq;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznr;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zznx;
UNEXPECTED TOP-LEVEL EXCEPTION:
java.lang.RuntimeException: Translation has been interrupted
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:613)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:311)
at com.android.dx.command.dexer.Main.run(Main.java:277)
at com.android.dx.command.dexer.Main.main(Main.java:245)
at com.android.dx.command.Main.main(Main.java:106)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at SDKMain.main(SDKMain.java:129)
Caused by: java.lang.InterruptedException: Too many errors
at com.android.dx.command.dexer.Main.processAllFiles(Main.java:605)
... 9 more
]
stdout[
processing archive E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\MainLibProj\libs.\play-games-plugin-support.jar...
processing com/google/games/bridge/BuildConfig.class...
processing com/google/games/bridge/NativeBridgeActivity.class...
processing com/google/games/bridge/TokenFragment.class...
processing com/google/games/bridge/TokenFragment$1.class...
processing com/google/games/bridge/TokenFragment$2.class...
processing com/google/games/bridge/TokenFragment$TokenRequest.class...
processing com/google/games/bridge/TokenPendingResult.class...
processing com/google/games/bridge/TokenResult.class...
processing archive E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-analytics-11.2.0\libs.\classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/measurement/
processing com/google/android/gms/measurement/AppMeasurementContentProvider.class...
processing com/google/android/gms/measurement/AppMeasurementInstallReferrerReceiver.class...
processing com/google/android/gms/measurement/AppMeasurementJobService.class...
processing com/google/android/gms/measurement/AppMeasurementReceiver.class...
processing com/google/android/gms/measurement/AppMeasurementService.class...
processing archive E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-analytics-impl-11.2.0\libs.\classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/internal/
processing com/google/android/gms/internal/zzcaf.class...
processing com/google/android/gms/internal/zzcag.class...
processing com/google/android/gms/internal/zzcah.class...
processing com/google/android/gms/internal/zzcai.class...
processing com/google/android/gms/internal/zzcaj.class...
processing com/google/android/gms/internal/zzcak.class...
processing com/google/android/gms/internal/zzcal.class...
processing com/google/android/gms/internal/zzcam.class...
processing com/google/android/gms/internal/zzcan.class...
processing com/google/android/gms/internal/zzcao.class...
processing com/google/android/gms/internal/zzcap.class...
processing com/google/android/gms/internal/zzcaq.class...
processing com/google/android/gms/internal/zzcar.class...
processing com/google/android/gms/internal/zzcas.class...
processing com/google/android/gms/internal/zzcat.class...
processing com/google/android/gms/internal/zzcau.class...
processing com/google/android/gms/internal/zzcav.class...
processing com/google/android/gms/internal/zzcaw.class...
processing com/google/android/gms/internal/zzcax.class...
processing com/google/android/gms/internal/zzcay.class...
processing com/google/android/gms/internal/zzcaz.class...
processing com/google/android/gms/internal/zzcba.class...
processing com/google/android/gms/internal/zzcbb.class...
processing com/google/android/gms/internal/zzcbc.class...
processing com/google/android/gms/internal/zzcbd.class...
processing com/google/android/gms/internal/zzcbe.class...
processing com/google/android/gms/internal/zzcbf.class...
processing com/google/android/gms/internal/zzcbg.class...
processing com/google/android/gms/internal/zzcbh.class...
processing com/google/android/gms/internal/zzcbi.class...
processing com/google/android/gms/internal/zzcbj.class...
processing com/google/android/gms/internal/zzcbk.class...
processing com/google/android/gms/internal/zzcbl.class...
processing com/google/android/gms/internal/zzcbm.class...
processing com/google/android/gms/internal/zzcbn.class...
processing com/google/android/gms/internal/zzcbo.class...
processing com/google/android/gms/internal/zzcbp.class...
processing com/google/android/gms/internal/zzcbq.class...
processing com/google/android/gms/internal/zzcbr.class...
processing com/google/android/gms/internal/zzcbs.class...
processing com/google/android/gms/internal/zzcbt.class...
processing com/google/android/gms/internal/zzcbu.class...
processing com/google/android/gms/internal/zzcbv.class...
processing com/google/android/gms/internal/zzcbw.class...
processing com/google/android/gms/internal/zzcbx.class...
processing com/google/android/gms/internal/zzcby.class...
processing com/google/android/gms/internal/zzcbz.class...
processing com/google/android/gms/internal/zzcca.class...
processing com/google/android/gms/internal/zzccb.class...
processing com/google/android/gms/internal/zzccc.class...
processing com/google/android/gms/internal/zzccd.class...
processing com/google/android/gms/internal/zzcce.class...
processing com/google/android/gms/internal/zzccf.class...
processing com/google/android/gms/internal/zzccg.class...
processing com/google/android/gms/internal/zzcch.class...
processing com/google/android/gms/internal/zzcci.class...
processing com/google/android/gms/internal/zzccj.class...
processing com/google/android/gms/internal/zzcck.class...
processing com/google/android/gms/internal/zzccl.class...
processing com/google/android/gms/internal/zzccm.class...
processing com/google/android/gms/internal/zzccn.class...
processing com/google/android/gms/internal/zzcco.class...
processing com/google/android/gms/internal/zzcco$zza.class...
processing com/google/android/gms/internal/zzccp.class...
processing com/google/android/gms/internal/zzccq.class...
processing com/google/android/gms/internal/zzccr.class...
processing com/google/android/gms/internal/zzccs.class...
processing com/google/android/gms/internal/zzcct.class...
processing com/google/android/gms/internal/zzccu.class...
processing com/google/android/gms/internal/zzccv.class...
processing com/google/android/gms/internal/zzccw.class...
processing com/google/android/gms/internal/zzccx.class...
processing com/google/android/gms/internal/zzccy.class...
processing com/google/android/gms/internal/zzccz.class...
processing com/google/android/gms/internal/zzcda.class...
processing com/google/android/gms/internal/zzcdb.class...
processing com/google/android/gms/internal/zzcdc.class...
processing com/google/android/gms/internal/zzcdd.class...
processing com/google/android/gms/internal/zzcde.class...
processing com/google/android/gms/internal/zzcdf.class...
processing com/google/android/gms/internal/zzcdg.class...
processing com/google/android/gms/internal/zzcdh.class...
processing com/google/android/gms/internal/zzcdi.class...
processing com/google/android/gms/internal/zzcdj.class...
processing com/google/android/gms/internal/zzcdk.class...
processing com/google/android/gms/internal/zzcdl.class...
processing com/google/android/gms/internal/zzcdm.class...
processing com/google/android/gms/internal/zzcdn.class...
processing com/google/android/gms/internal/zzcdo.class...
processing com/google/android/gms/internal/zzcdp.class...
processing com/google/android/gms/internal/zzcdq.class...
processing com/google/android/gms/internal/zzcdr.class...
processing com/google/android/gms/internal/zzcds.class...
processing com/google/android/gms/internal/zzcdt.class...
processing com/google/android/gms/internal/zzcdu.class...
processing com/google/android/gms/internal/zzcdv.class...
processing com/google/android/gms/internal/zzcdw.class...
processing com/google/android/gms/internal/zzcdx.class...
processing com/google/android/gms/internal/zzcdy.class...
processing com/google/android/gms/internal/zzcdz.class...
processing com/google/android/gms/internal/zzcea.class...
processing com/google/android/gms/internal/zzceb.class...
processing com/google/android/gms/internal/zzcec.class...
processing com/google/android/gms/internal/zzced.class...
processing com/google/android/gms/internal/zzcee.class...
processing com/google/android/gms/internal/zzcef.class...
processing com/google/android/gms/internal/zzceg.class...
processing com/google/android/gms/internal/zzceh.class...
processing com/google/android/gms/internal/zzcei.class...
processing com/google/android/gms/internal/zzcej.class...
processing com/google/android/gms/internal/zzcek.class...
processing com/google/android/gms/internal/zzcel.class...
processing com/google/android/gms/internal/zzcem.class...
processing com/google/android/gms/internal/zzcen.class...
processing com/google/android/gms/internal/zzceo.class...
processing com/google/android/gms/internal/zzcep.class...
processing com/google/android/gms/internal/zzceq.class...
processing com/google/android/gms/internal/zzcer.class...
processing com/google/android/gms/internal/zzces.class...
processing com/google/android/gms/internal/zzcet.class...
processing com/google/android/gms/internal/zzceu.class...
processing com/google/android/gms/internal/zzcev.class...
processing com/google/android/gms/internal/zzcew.class...
processing com/google/android/gms/internal/zzcex.class...
processing com/google/android/gms/internal/zzcey.class...
processing com/google/android/gms/internal/zzcez.class...
processing com/google/android/gms/internal/zzcfa.class...
processing com/google/android/gms/internal/zzcfb.class...
processing com/google/android/gms/internal/zzcfc.class...
processing com/google/android/gms/internal/zzcfd.class...
processing com/google/android/gms/internal/zzcfe.class...
processing com/google/android/gms/internal/zzcff.class...
processing com/google/android/gms/internal/zzcfg.class...
processing com/google/android/gms/internal/zzcfh.class...
processing com/google/android/gms/internal/zzcfi.class...
processing com/google/android/gms/internal/zzcfj.class...
processing com/google/android/gms/internal/zzcfk.class...
processing com/google/android/gms/internal/zzcfl.class...
processing com/google/android/gms/internal/zzcfm.class...
processing com/google/android/gms/internal/zzcfn.class...
processing com/google/android/gms/internal/zzcfo.class...
processing com/google/android/gms/internal/zzcfp.class...
processing com/google/android/gms/internal/zzcfq.class...
processing com/google/android/gms/internal/zzcfr.class...
processing com/google/android/gms/internal/zzcfs.class...
processing com/google/android/gms/internal/zzcft.class...
processing com/google/android/gms/internal/zzcfu.class...
processing com/google/android/gms/internal/zzcfv.class...
processing com/google/android/gms/internal/zzcfw.class...
processing com/google/android/gms/internal/zzcfx.class...
processing com/google/android/gms/internal/zzcfy.class...
processing com/google/android/gms/internal/zzcfz.class...
processing com/google/android/gms/internal/zzcga.class...
processing com/google/android/gms/internal/zzcgb.class...
processing com/google/android/gms/internal/zzcgc.class...
processing com/google/android/gms/internal/zzcgd.class...
processing com/google/android/gms/internal/zzcge.class...
ignored resource com/google/android/gms/measurement/
processing com/google/android/gms/measurement/AppMeasurement.class...
processing com/google/android/gms/measurement/AppMeasurement$ConditionalUserProperty.class...
processing com/google/android/gms/measurement/AppMeasurement$Event.class...
processing com/google/android/gms/measurement/AppMeasurement$EventInterceptor.class...
processing com/google/android/gms/measurement/AppMeasurement$OnEventListener.class...
processing com/google/android/gms/measurement/AppMeasurement$Param.class...
processing com/google/android/gms/measurement/AppMeasurement$UserProperty.class...
processing com/google/android/gms/measurement/AppMeasurement$zza.class...
processing com/google/android/gms/measurement/AppMeasurement$zzb.class...
ignored resource com/google/firebase/
ignored resource com/google/firebase/analytics/
processing com/google/firebase/analytics/FirebaseAnalytics.class...
processing com/google/firebase/analytics/FirebaseAnalytics$Event.class...
processing com/google/firebase/analytics/FirebaseAnalytics$Param.class...
processing com/google/firebase/analytics/FirebaseAnalytics$UserProperty.class...
ignored resource E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-app-unity-4.1.0\libs.\armeabi-v7a\libApp.so
processing archive E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-app-unity-4.1.0\libs.\classes.jar...
ignored resource E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-app-unity-4.1.0\libs.\x86\libApp.so
processing archive E:\Work\Unity\projects\EzerGame\flappysnake\Temp\StagingArea\android-libraries\firebase-common-11.2.0\libs.\classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/internal/
processing com/google/android/gms/internal/zzeaa.class...
processing com/google/android/gms/internal/zzeab.class...
processing com/google/android/gms/internal/zzeac.class...
processing com/google/android/gms/internal/zzead.class...
processing com/google/android/gms/internal/zzeae.class...
ignored resource com/google/firebase/
processing com/google/firebase/FirebaseApp.class...
processing com/google/firebase/FirebaseApp$zza.class...
processing com/google/firebase/FirebaseApp$zzb.class...
processing com/google/firebase/FirebaseApp$zzc.class...
processing com/google/firebase/FirebaseApp$zzd.class...
processing com/google/firebase/FirebaseNetworkException.class...
processing com/google/firebase/FirebaseOptions.class...
processing com/google/firebase/FirebaseOptions$Builder.class...
processing com/google/firebase/FirebaseTooManyRequestsException.class...
ignored resource com/google/firebase/auth/
processing com/google/firebase/auth/FirebaseAuthException.class...
processing com/google/firebase/auth/GetTokenResult.class...
ignored resource com/google/firebase/provider/
processing com/google/firebase/provider/Fi
Seams GPGS and Firebase using different version of AppMeasurement classes. But How to resovle?
@claywilkinson Sure, here is the Assets/Plugins/Android directory
https://imgur.com/a/6jW8z
Under the MainLibProj folder, there is a sub libs folder with a play-games-plugin-support.jar in it as well, dated August 9th.
You need to replace google play version in PluginVersion.cs
// used to check for the correct min version or play services: 11.2
public const int MinGmsCoreVersionCode = 11200000;
// used to get the right version of dependencies.
public const string PlayServicesVersionConstraint = "11+";
@tnbao91 I have to admit that I was skeptical, but that does appear to allow me to successfully build. Thank you!
This isn't solved. At first I was getting the same error message as @crunchbury but, after attempting the solution proposed by @tnbao91, I'm ending up with the same error message as @daneric.
Also, this isn't restricted to Firebase Analytics. The same thing happens with Firebase Messaging.
@saiichihashimoto Can you screenshot your Plugins/Android folder?
@tnbao91

All player-services (jar/aar) need to be same version. I think you should update all to 11.2.0
@tnbao91 I don't understand how. I've installed the newest plugin from both the Play Games Plugin for Unity and Firebase for Unity. How do I get everything to 11.2.0?
You need to replace google play version in PluginVersion.cs
// used to check for the correct min version or play services: 11.2
public const int MinGmsCoreVersionCode = 11200000;
// used to get the right version of dependencies.
public const string PlayServicesVersionConstraint = "11+";
Follow my comment
I mentioned this before, but I tried the solution proposed by @tnbao91 and I'm getting the same error message as @daneric. I believe I've done everything @tnbao91 suggested but, just in case:
After doing this in PluginVersion.cs:

I ended up with this:

And the error I've received is:
CommandInvokationFailure: Unable to convert classes into dex format.
/Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home/bin/java -Xmx2048M -Dcom.android.sdkmanager.toolsdir="/Users/saiichi/Library/Android/sdk/tools" -Dfile.encoding=UTF8 -jar "/Applications/Unity/PlaybackEngines/AndroidPlayer/Tools/sdktools.jar" -
stderr[
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbdq;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbdr;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbds;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbdt;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbdu;
Uncaught translation error: java.lang.IllegalArgumentException: already added: Lcom/google/android/gms/internal/zzbdv;
6 errors; aborting
]
stdout[
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/MainLibProj/libs/./play-games-plugin-support.jar...
processing com/google/games/bridge/BuildConfig.class...
processing com/google/games/bridge/NativeBridgeActivity.class...
processing com/google/games/bridge/TokenFragment.class...
processing com/google/games/bridge/TokenFragment$1.class...
processing com/google/games/bridge/TokenFragment$2.class...
processing com/google/games/bridge/TokenFragment$TokenRequest.class...
processing com/google/games/bridge/TokenPendingResult.class...
processing com/google/games/bridge/TokenResult.class...
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-analytics-11.2.0/libs/./classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/measurement/
processing com/google/android/gms/measurement/AppMeasurementContentProvider.class...
processing com/google/android/gms/measurement/AppMeasurementInstallReferrerReceiver.class...
processing com/google/android/gms/measurement/AppMeasurementJobService.class...
processing com/google/android/gms/measurement/AppMeasurementReceiver.class...
processing com/google/android/gms/measurement/AppMeasurementService.class...
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-analytics-impl-11.2.0/libs/./classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/internal/
processing com/google/android/gms/internal/zzcaf.class...
processing com/google/android/gms/internal/zzcag.class...
processing com/google/android/gms/internal/zzcah.class...
processing com/google/android/gms/internal/zzcai.class...
processing com/google/android/gms/internal/zzcaj.class...
processing com/google/android/gms/internal/zzcak.class...
processing com/google/android/gms/internal/zzcal.class...
processing com/google/android/gms/internal/zzcam.class...
processing com/google/android/gms/internal/zzcan.class...
processing com/google/android/gms/internal/zzcao.class...
processing com/google/android/gms/internal/zzcap.class...
processing com/google/android/gms/internal/zzcaq.class...
processing com/google/android/gms/internal/zzcar.class...
processing com/google/android/gms/internal/zzcas.class...
processing com/google/android/gms/internal/zzcat.class...
processing com/google/android/gms/internal/zzcau.class...
processing com/google/android/gms/internal/zzcav.class...
processing com/google/android/gms/internal/zzcaw.class...
processing com/google/android/gms/internal/zzcax.class...
processing com/google/android/gms/internal/zzcay.class...
processing com/google/android/gms/internal/zzcaz.class...
processing com/google/android/gms/internal/zzcba.class...
processing com/google/android/gms/internal/zzcbb.class...
processing com/google/android/gms/internal/zzcbc.class...
processing com/google/android/gms/internal/zzcbd.class...
processing com/google/android/gms/internal/zzcbe.class...
processing com/google/android/gms/internal/zzcbf.class...
processing com/google/android/gms/internal/zzcbg.class...
processing com/google/android/gms/internal/zzcbh.class...
processing com/google/android/gms/internal/zzcbi.class...
processing com/google/android/gms/internal/zzcbj.class...
processing com/google/android/gms/internal/zzcbk.class...
processing com/google/android/gms/internal/zzcbl.class...
processing com/google/android/gms/internal/zzcbm.class...
processing com/google/android/gms/internal/zzcbn.class...
processing com/google/android/gms/internal/zzcbo.class...
processing com/google/android/gms/internal/zzcbp.class...
processing com/google/android/gms/internal/zzcbq.class...
processing com/google/android/gms/internal/zzcbr.class...
processing com/google/android/gms/internal/zzcbs.class...
processing com/google/android/gms/internal/zzcbt.class...
processing com/google/android/gms/internal/zzcbu.class...
processing com/google/android/gms/internal/zzcbv.class...
processing com/google/android/gms/internal/zzcbw.class...
processing com/google/android/gms/internal/zzcbx.class...
processing com/google/android/gms/internal/zzcby.class...
processing com/google/android/gms/internal/zzcbz.class...
processing com/google/android/gms/internal/zzcca.class...
processing com/google/android/gms/internal/zzccb.class...
processing com/google/android/gms/internal/zzccc.class...
processing com/google/android/gms/internal/zzccd.class...
processing com/google/android/gms/internal/zzcce.class...
processing com/google/android/gms/internal/zzccf.class...
processing com/google/android/gms/internal/zzccg.class...
processing com/google/android/gms/internal/zzcch.class...
processing com/google/android/gms/internal/zzcci.class...
processing com/google/android/gms/internal/zzccj.class...
processing com/google/android/gms/internal/zzcck.class...
processing com/google/android/gms/internal/zzccl.class...
processing com/google/android/gms/internal/zzccm.class...
processing com/google/android/gms/internal/zzccn.class...
processing com/google/android/gms/internal/zzcco.class...
processing com/google/android/gms/internal/zzcco$zza.class...
processing com/google/android/gms/internal/zzccp.class...
processing com/google/android/gms/internal/zzccq.class...
processing com/google/android/gms/internal/zzccr.class...
processing com/google/android/gms/internal/zzccs.class...
processing com/google/android/gms/internal/zzcct.class...
processing com/google/android/gms/internal/zzccu.class...
processing com/google/android/gms/internal/zzccv.class...
processing com/google/android/gms/internal/zzccw.class...
processing com/google/android/gms/internal/zzccx.class...
processing com/google/android/gms/internal/zzccy.class...
processing com/google/android/gms/internal/zzccz.class...
processing com/google/android/gms/internal/zzcda.class...
processing com/google/android/gms/internal/zzcdb.class...
processing com/google/android/gms/internal/zzcdc.class...
processing com/google/android/gms/internal/zzcdd.class...
processing com/google/android/gms/internal/zzcde.class...
processing com/google/android/gms/internal/zzcdf.class...
processing com/google/android/gms/internal/zzcdg.class...
processing com/google/android/gms/internal/zzcdh.class...
processing com/google/android/gms/internal/zzcdi.class...
processing com/google/android/gms/internal/zzcdj.class...
processing com/google/android/gms/internal/zzcdk.class...
processing com/google/android/gms/internal/zzcdl.class...
processing com/google/android/gms/internal/zzcdm.class...
processing com/google/android/gms/internal/zzcdn.class...
processing com/google/android/gms/internal/zzcdo.class...
processing com/google/android/gms/internal/zzcdp.class...
processing com/google/android/gms/internal/zzcdq.class...
processing com/google/android/gms/internal/zzcdr.class...
processing com/google/android/gms/internal/zzcds.class...
processing com/google/android/gms/internal/zzcdt.class...
processing com/google/android/gms/internal/zzcdu.class...
processing com/google/android/gms/internal/zzcdv.class...
processing com/google/android/gms/internal/zzcdw.class...
processing com/google/android/gms/internal/zzcdx.class...
processing com/google/android/gms/internal/zzcdy.class...
processing com/google/android/gms/internal/zzcdz.class...
processing com/google/android/gms/internal/zzcea.class...
processing com/google/android/gms/internal/zzceb.class...
processing com/google/android/gms/internal/zzcec.class...
processing com/google/android/gms/internal/zzced.class...
processing com/google/android/gms/internal/zzcee.class...
processing com/google/android/gms/internal/zzcef.class...
processing com/google/android/gms/internal/zzceg.class...
processing com/google/android/gms/internal/zzceh.class...
processing com/google/android/gms/internal/zzcei.class...
processing com/google/android/gms/internal/zzcej.class...
processing com/google/android/gms/internal/zzcek.class...
processing com/google/android/gms/internal/zzcel.class...
processing com/google/android/gms/internal/zzcem.class...
processing com/google/android/gms/internal/zzcen.class...
processing com/google/android/gms/internal/zzceo.class...
processing com/google/android/gms/internal/zzcep.class...
processing com/google/android/gms/internal/zzceq.class...
processing com/google/android/gms/internal/zzcer.class...
processing com/google/android/gms/internal/zzces.class...
processing com/google/android/gms/internal/zzcet.class...
processing com/google/android/gms/internal/zzceu.class...
processing com/google/android/gms/internal/zzcev.class...
processing com/google/android/gms/internal/zzcew.class...
processing com/google/android/gms/internal/zzcex.class...
processing com/google/android/gms/internal/zzcey.class...
processing com/google/android/gms/internal/zzcez.class...
processing com/google/android/gms/internal/zzcfa.class...
processing com/google/android/gms/internal/zzcfb.class...
processing com/google/android/gms/internal/zzcfc.class...
processing com/google/android/gms/internal/zzcfd.class...
processing com/google/android/gms/internal/zzcfe.class...
processing com/google/android/gms/internal/zzcff.class...
processing com/google/android/gms/internal/zzcfg.class...
processing com/google/android/gms/internal/zzcfh.class...
processing com/google/android/gms/internal/zzcfi.class...
processing com/google/android/gms/internal/zzcfj.class...
processing com/google/android/gms/internal/zzcfk.class...
processing com/google/android/gms/internal/zzcfl.class...
processing com/google/android/gms/internal/zzcfm.class...
processing com/google/android/gms/internal/zzcfn.class...
processing com/google/android/gms/internal/zzcfo.class...
processing com/google/android/gms/internal/zzcfp.class...
processing com/google/android/gms/internal/zzcfq.class...
processing com/google/android/gms/internal/zzcfr.class...
processing com/google/android/gms/internal/zzcfs.class...
processing com/google/android/gms/internal/zzcft.class...
processing com/google/android/gms/internal/zzcfu.class...
processing com/google/android/gms/internal/zzcfv.class...
processing com/google/android/gms/internal/zzcfw.class...
processing com/google/android/gms/internal/zzcfx.class...
processing com/google/android/gms/internal/zzcfy.class...
processing com/google/android/gms/internal/zzcfz.class...
processing com/google/android/gms/internal/zzcga.class...
processing com/google/android/gms/internal/zzcgb.class...
processing com/google/android/gms/internal/zzcgc.class...
processing com/google/android/gms/internal/zzcgd.class...
processing com/google/android/gms/internal/zzcge.class...
ignored resource com/google/android/gms/measurement/
processing com/google/android/gms/measurement/AppMeasurement.class...
processing com/google/android/gms/measurement/AppMeasurement$ConditionalUserProperty.class...
processing com/google/android/gms/measurement/AppMeasurement$Event.class...
processing com/google/android/gms/measurement/AppMeasurement$EventInterceptor.class...
processing com/google/android/gms/measurement/AppMeasurement$OnEventListener.class...
processing com/google/android/gms/measurement/AppMeasurement$Param.class...
processing com/google/android/gms/measurement/AppMeasurement$UserProperty.class...
processing com/google/android/gms/measurement/AppMeasurement$zza.class...
processing com/google/android/gms/measurement/AppMeasurement$zzb.class...
ignored resource com/google/firebase/
ignored resource com/google/firebase/analytics/
processing com/google/firebase/analytics/FirebaseAnalytics.class...
processing com/google/firebase/analytics/FirebaseAnalytics$Event.class...
processing com/google/firebase/analytics/FirebaseAnalytics$Param.class...
processing com/google/firebase/analytics/FirebaseAnalytics$UserProperty.class...
ignored resource /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-analytics-unity-4.1.0/libs/./armeabi-v7a/libAnalytics.so
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-analytics-unity-4.1.0/libs/./classes.jar...
ignored resource /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-analytics-unity-4.1.0/libs/./x86/libAnalytics.so
ignored resource /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-app-unity-4.1.0/libs/./armeabi-v7a/libApp.so
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-app-unity-4.1.0/libs/./classes.jar...
ignored resource /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-app-unity-4.1.0/libs/./x86/libApp.so
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-common-11.2.0/libs/./classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/internal/
processing com/google/android/gms/internal/zzeaa.class...
processing com/google/android/gms/internal/zzeab.class...
processing com/google/android/gms/internal/zzeac.class...
processing com/google/android/gms/internal/zzead.class...
processing com/google/android/gms/internal/zzeae.class...
ignored resource com/google/firebase/
processing com/google/firebase/FirebaseApp.class...
processing com/google/firebase/FirebaseApp$zza.class...
processing com/google/firebase/FirebaseApp$zzb.class...
processing com/google/firebase/FirebaseApp$zzc.class...
processing com/google/firebase/FirebaseApp$zzd.class...
processing com/google/firebase/FirebaseNetworkException.class...
processing com/google/firebase/FirebaseOptions.class...
processing com/google/firebase/FirebaseOptions$Builder.class...
processing com/google/firebase/FirebaseTooManyRequestsException.class...
ignored resource com/google/firebase/auth/
processing com/google/firebase/auth/FirebaseAuthException.class...
processing com/google/firebase/auth/GetTokenResult.class...
ignored resource com/google/firebase/provider/
processing com/google/firebase/provider/FirebaseInitProvider.class...
processing com/google/firebase/zza.class...
processing com/google/firebase/zzc.class...
processing archive /Users/saiichi/Workspace/sun-blocks/Temp/StagingArea/android-libraries/firebase-config-11.2.0/libs/./classes.jar...
ignored resource META-INF/
ignored resource META-INF/MANIFEST.MF
ignored resource com/
ignored resource com/google/
ignored resource com/google/android/
ignored resource com/google/android/gms/
ignored resource com/google/android/gms/internal/
processing com/google/android/gms/internal/zzbdq.class...
processing com/google/android/gms/internal/zzbdr.class...
processing com/google/android/gms/internal/zzbds.class...
processing com/google/android/gms/internal/zzbdt.class...
processing com/google/android/gms/internal/zzbdu.class<message truncated>
@saiichihashimoto Not sure if it will help, but did you try updating your play services resolver to the latest? Looks like they have a new version out. https://github.com/googlesamples/unity-jar-resolver
@crunchbury Just did. No change of any kind.
Well, no change to the errors that occur.
Sorry to hear. My suspicion is that you definitely have duplicate jars or aars somewhere. Are you using other Android plug-ins? Unfortunately it's pretty hard and time consuming to break apart the jars/aars to see the classes of each one and figure out where "zzbdq.class" and others exist. I wish there was better error messaging.
My recommendation would be to get the Firebase sample app for the functionality you're using (here's the analytics one), install Firebase and GPGS in it, and compare to your own setup. I had to implement tnbao's solution as stated above to get it to build, but it worked for me. If you can get the sample app working, hopefully you can just wholesale bring over the plug-ins directory from there.
I think we're focusing on the wrong problem here. This isn't about solving the "doesn't work for me" or "Android with Play Games 0.9.40 + Firebase Analytics 4.1.0" problem. That's only temporary. Even #1764 solves the issue by manually syncing up the versions of the dependencies.
The problem is that dependency management here is unstable, impossible to debug (zzbdq.class... what?), and requires manual guesswork. Google searches and this thread leads to a lot of "try this, it worked for me" and, even when it works, why it works is not clear. Once a new version is pushed to either package, this song and dance will happen again.
Is this a Firebase problem? Is this a Play Games plugin problem? Is this a problem with the unity jar resolver? Or is this dependency management in Unity in general? If this ends up being a larger Unity issue, maybe the question is: how do we solve it for this plugin, permanently?
I too hit this issue, I would say it occurs for me every other GPS or Firebase update.
Here is 'One Weird Trick That Always Works'
Start a blank project. Import GPGS - build - Import Firebase package 1 - build - package 2 - build - and so on until all packages are installed and presumably still building. If you use AdMob - import AdMob but be sure uncheck the 'Play Services Resolver install as it is likely out of date.
Check the folder structure in your temp project, then in your actual working project delete those folders in your real project and paste in folders from temp project (close the project first). Then reinstall any other non-google stuff (aka stuff that works and doesn't drive you to drink, but you still had to nuke it cause of.... calm as still water) anyways, after installing the 'good' plugins everything should be back to normal, this is how I got firebase 4.1 installed.
But to @saiichihashimoto 's point, the dependency management BS doesn't work. This is a text book example of over engineering. Just give as one good tech writer who can explain what file to put where and which ones to remove and all this nonsense will go away. Even with all these resolver bells and whistles and probably countless man hours of coding (definitely supporting) to make this easy I still have to do it manually so just let us cut out the middle man and do it manually without something doing automatically but incorrectly.
tldr - I rant about google and stuff...
Also the reason sh!t never works from google is cause they don't build games, they build platforms and as what seems to be an afterthought at times, plugins to access those platforms. They test that the plugin works with their other plugins and then job done, call it a day. This is why I install the plugins into an empty project, it likely better matches their test environment. Actually its a bit more complicated, they do have some 'game test things' or apps built with Unity, but they do not begin to approach the level of complexity of a real shipping app with a dozen or so competing plugins, store, cloud service integration...blah blah blah, point is they make platforms. They are not going to get this end of the pipeline right, not until they go through the trouble to do the thing - make the games - that they are trying to support. But I'm sure Unity market exposure is a fraction of a fraction of their revenue so... why would they do that.
I also have this issue with latest Google Play Services, Firebase Messaging and jar resolver plugins as of this date.
@claywilkinson, what would you say is the recommended solution for these? Both:
still have the problem with firebase and GPG here too , deleted duplicate class on play-services-auth-10.0.6.aar(class.jar), I can now build but seam like I can't connect to GPG.
Still happening with 0.9.41 and 4.2.0
The latest version of the plugins for both Firebase and GPGS use an updated Jar resolver which handles the multiple library issue much better. It sounds like there are multiple issues from the multiple people on the thread.
I recommend:
Thanks!
Im one more in the boat. Every update, all that was working, breaks again. This time, im in a 30 hours loop until i reached here. It's so frustrating and confusing that im starting to hate game development when this happens.
Most helpful comment
I think we're focusing on the wrong problem here. This isn't about solving the "doesn't work for me" or "Android with Play Games 0.9.40 + Firebase Analytics 4.1.0" problem. That's only temporary. Even #1764 solves the issue by manually syncing up the versions of the dependencies.
The problem is that dependency management here is unstable, impossible to debug (zzbdq.class... what?), and requires manual guesswork. Google searches and this thread leads to a lot of "try this, it worked for me" and, even when it works, why it works is not clear. Once a new version is pushed to either package, this song and dance will happen again.
Is this a Firebase problem? Is this a Play Games plugin problem? Is this a problem with the unity jar resolver? Or is this dependency management in Unity in general? If this ends up being a larger Unity issue, maybe the question is: how do we solve it for this plugin, permanently?