Lors de la compilation de mon projet, le message d'erreur suivant s'affiche:
Program type already present: com.google.Android.gms.internal.measurement.zzabn Message{kind=ERROR, text=Program type already present: com.google.Android.gms.internal.measurement.zzabn, sources=[Unknown source file], tool name=Optional.of(D8)}
ou
D8: Program type already present: com.google.Android.gms.internal.measurement.zzabo
Avec le stacktrace suivant dans le journal Gradle
at com.Android.builder.profile.Recorder$Block.handleException(Recorder.Java:55)
at com.Android.builder.profile.ThreadRecorder.record(ThreadRecorder.Java:104)
at com.Android.build.gradle.internal.pipeline.TransformTask.transform(TransformTask.Java:212)\\nat 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:498)
at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.Java:73)
at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.Java:46)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.Java:39)
at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.Java:26)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.Java:121)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.Java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.Java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.Java:110)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.Java:92)
at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.Java:70)
at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.Java:51)
at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.Java:62)
at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.Java:54)
at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.Java:60)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.Java:97)
at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.Java:87)
at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.Java:52)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.Java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.Java:54)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.Java:43)
at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.Java:34)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker$1.run(DefaultTaskGraphExecuter.Java:248)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:336)
at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.Java:328)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.Java:199)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.Java:110)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.Java:241)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.Java:230)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.Java:123)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.access$200(DefaultTaskPlanExecutor.Java:79)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.Java:104)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker$1.execute(DefaultTaskPlanExecutor.Java:98)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.Java:626)
at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.Java:581)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.Java:98)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.Java:63)
at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.Java:46)
at Java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.Java:1142)
at Java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.Java:617)
at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.Java:55)
at Java.lang.Thread.run(Thread.Java:745) Caused by: com.Android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\0.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\4.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\6.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\7.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\8.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\9.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\10.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\12.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\13.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\14.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\17.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\18.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\19.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\20.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\21.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\22.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\23.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\24.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\25.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\26.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\27.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\28.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\29.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\30.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\31.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\32.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\34.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\39.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\40.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\44.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\45.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\46.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\47.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\48.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\49.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\51.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\52.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\53.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\55.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\56.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\57.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\58.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\59.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\83.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\84.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\85.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\86.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\87.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\88.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\89.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\90.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\91.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\92.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\93.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\94.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\95.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\96.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\97.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\100.jar, D:\Android\appName\app\build\intermediates\transforms\dexBuilder\debug\101.jar
at com.Android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow(D8DexArchiveMerger.Java:124)
at com.Android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.Java:109)
at com.Android.build.gradle.internal.transforms.DexMergerTransformCallable.call(DexMergerTransformCallable.Java:101)
at com.Android.build.gradle.internal.transforms.ExternalLibsMergerTransform.transform(ExternalLibsMergerTransform.kt:123)
at com.Android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.Java:221)
at com.Android.build.gradle.internal.pipeline.TransformTask$2.call(TransformTask.Java:217)
at com.Android.builder.profile.ThreadRecorder.record(ThreadRecorder.Java:102) ... 48 more Caused by: com.Android.tools.r8.CompilationFailedException: Compilation failed to complete
at com.Android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.Java:76)
at com.Android.tools.r8.utils.ExceptionUtils.withD8CompilationHandler(ExceptionUtils.Java:45)
at com.Android.tools.r8.D8.run(D8.Java:67)
at com.Android.builder.dexing.D8DexArchiveMerger.mergeDexArchives(D8DexArchiveMerger.Java:107) ... 53 more Caused by: com.Android.tools.r8.utils.AbortException
at com.Android.tools.r8.utils.Reporter.failIfPendingErrors(Reporter.Java:77)
at com.Android.tools.r8.utils.Reporter.fatalError(Reporter.Java:58)
at com.Android.tools.r8.utils.ExceptionUtils.withCompilationHandler(ExceptionUtils.Java:67) ... 56 more
Firebase a mis à jour le SDK:
Les kits de développement SDK Android de Firebase ont maintenant des numéros de version indépendants, permettant des mises à jour plus fréquentes et flexibles.
Mettez à jour toutes vos dépendances Firebase pour utiliser la dernière version:
Firebase Core com.google.firebase:firebase-core:15.0.2
Ads com.google.firebase:firebase-ads:15.0.0
Analytics com.google.firebase:firebase-analytics:15.0.2
App Indexing com.google.firebase:firebase-appindexing:15.0.0
Authentication com.google.firebase:firebase-auth:15.1.0
Cloud Firestore com.google.firebase:firebase-firestore:16.0.0
Cloud Functions com.google.firebase:firebase-functions:15.0.0
Cloud Messaging com.google.firebase:firebase-messaging:15.0.2
Cloud Storage com.google.firebase:firebase-storage:15.0.2
Crash Reporting com.google.firebase:firebase-crash:15.0.2
Crashlytics com.crashlytics.sdk.Android:crashlytics:2.9.1
Invites com.google.firebase:firebase-invites:15.0.1
Performance Monitoring com.google.firebase:firebase-perf:15.1.0
Realtime Database com.google.firebase:firebase-database:15.0.0
Remote Config com.google.firebase:firebase-config:15.0.2
Plus d'informations sont ici:
https://firebase.google.com/support/release-notes/Android
Veuillez également mettre à jour le plugin google-services
:
classpath 'com.google.gms:google-services:3.3.1'
Vous pouvez trouver les derniers services Google en cliquant sur ICI
Vérifiez également ce lien pour comprendre les modifications et suivez les étapes répertoriées dans l'article:
Dans mon cas, le problème est le même. J'ai suivi les étapes ci-dessous:
1.build.gradle (gradle)
changement :
classpath 'com.google.gms:google-services:3.2.0'
À :
classpath 'com.google.gms:google-services:3.2.1'
2.build.gradle (module)
implementation 'com.google.firebase:firebase-core:15.0.2'
implementation 'com.google.firebase:firebase-messaging:15.0.2'
implementation 'com.google.Android.gms:play-services-maps:15.0.1'
pour google location and places:
implementation 'com.google.Android.gms:play-services-location:15.0.1'
implementation 'com.google.Android.gms:play-services-places:15.0.1'
Le problème est dû au fait que Firebase a démarré la gestion des versions des bibliothèques séparément. Mettre à jour tout à la dernière version résout le problème.
Mettez à jour la version du plugin google play gradle vers la dernière version, actuellement 4.0.1
.
Dans le fichier niveau du projetbuild.gradle
:
classpath 'com.google.gms:google-services:4.0.1'
Des informations sur la dernière version du plugin google gradle sont disponibles à l'adresse suivante:
https://bintray.com/Android/android-tools/com.google.gms.google-services/
Et utilisez les dernières versions des bibliothèques individuelles dans le fichier app levelbuild.gradle
:
implementation 'com.google.Android.gms:play-services-vision:15.0.2'
implementation 'com.google.Android.gms:play-services-ads:15.0.1'
implementation 'com.google.firebase:firebase-messaging:15.0.2'
Des informations sur les dernières versions des bibliothèques individuelles sont disponibles sur:
https://firebase.google.com/support/release-notes/Android and https://developers.google.com/Android/guides/setup
Pour ceux qui sont confrontés à ce problème avec les dernières versions de Firebase à compter du 8 novembre 2018. J'ai résolu le conflit en rétrogradant la bibliothèque firebase-ads
tout en conservant le reste à l'aide des dernières versions.
J'ai changé de:
googleImplementation "com.google.firebase:firebase-core:16.0.5"
googleImplementation "com.google.firebase:firebase-ads:17.0.0" //CONFLICTING VERSION
googleImplementation "com.google.firebase:firebase-config:16.1.0"
googleImplementation "com.google.firebase:firebase-messaging:17.3.4"
À:
googleImplementation "com.google.firebase:firebase-core:16.0.5"
googleImplementation "com.google.firebase:firebase-ads:15.0.1" //WORKING VERSION
googleImplementation "com.google.firebase:firebase-config:16.1.0"
googleImplementation "com.google.firebase:firebase-messaging:17.3.4"
En outre, notez que sur la racine build.gradle
du projet, j'utilise la version de services Google suivante com.google.gms:google-services:4.2.0
.
J'ai essayé quelques approches, analysant l'arborescence des dépendances, en excluant les modules du programme mentionné, mais ils ont fini par planter au moment de l'exécution. La solution la plus sûre que j'ai trouvée utilisait le 15.0.1
pour le firebase-ads
Service Gradle dependency
Firebase Core com.google.firebase:firebase-core:16.0.1
Ads com.google.firebase:firebase-ads:15.0.1
Analytics com.google.firebase:firebase-analytics:16.0.0
App Indexing com.google.firebase:firebase-appindexing:16.0.1
Authentication com.google.firebase:firebase-auth:16.0.2
Cloud Firestore com.google.firebase:firebase-firestore:17.0.2
Cloud Functions com.google.firebase:firebase-functions:16.0.1
Cloud Messaging com.google.firebase:firebase-messaging:17.0.0
Cloud Storage com.google.firebase:firebase-storage:16.0.1
Crash Reporting com.google.firebase:firebase-crash:16.0.0
Crashlytics com.crashlytics.sdk.Android:crashlytics:2.9.3
Invites com.google.firebase:firebase-invites:16.0.1
ML Kit: Model Interpreter com.google.firebase:firebase-ml-model-interpreter:16.0.0
ML Kit: Vision com.google.firebase:firebase-ml-vision:16.0.0
ML Kit: Image Labeling com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring com.google.firebase:firebase-perf:16.0.0
Realtime Database com.google.firebase:firebase-database:16.0.1
Remote Config com.google.firebase:firebase-config:16.0.0
Cloud Firestore version 17.0.2
exigence de gRPC mise à jour de 1.8.0 à 1.12.0. Cela permet un basculement plus rapide entre les réseaux Wi-Fi et cellulaires.
Invite version 16.0.1
Incompatibilité corrigée avec firebase-core 16.0.1.
L'erreur ci-dessus est apparue aujourd'hui après la reconstruction de l'application, comme si la nouvelle mise à jour à classpath: 'com.google.gms:google-services:3.1.0'
À.
classpath: 'com.google.gms:google-services:3.2.0'
a aidé à résoudre mon problème.
En outre, d’autres réponses mentionnées dans ce message peuvent également aider, cela dépend de la version de Google google.firebase packages utilisée, j’ai essayé de mettre à jour les paquets firebase vers leur dernière version. Vous pouvez également vous référer à la question suivante et obtenir de l’aide à partir des réponses mentionnées.
De plus, j'ai ajouté ce qui suit au fichier de classement du projet dans la section référentiels
maven{
url "https://dl.bintray.com/Android/android-tools"
}
google.gms
vers la dernière versionAu moment de la réponse, le dernier point est 4.1.0
.
buildscript {
// ...
dependencies {
// ...
classpath 'com.google.gms:google-services:4.1.0' // google-services plugin
}
}
allprojects {
// ...
repositories {
// ...
google() // Google's Maven repository
}
}
Mettre à jour ci-dessous la dépendance si vous en utilisez. Notez que firebase a maintenant des versions individuelles pour chaque dépendance.
Utilisez les dernières bibliothèques Firebase . Au moment de la réponse, les dernières versions sont ci-dessous.
Firebase Core com.google.firebase:firebase-core:16.0.3
Ads com.google.firebase:firebase-ads:15.0.1
Analytics com.google.firebase:firebase-analytics:16.0.3
App Indexing com.google.firebase:firebase-appindexing:16.0.1
Authentication com.google.firebase:firebase-auth:16.0.3
Cloud Firestore com.google.firebase:firebase-firestore:17.1.0
Cloud Functions com.google.firebase:firebase-functions:16.1.0
Cloud Messaging com.google.firebase:firebase-messaging:17.3.2
Cloud Storage c om.google.firebase:firebase-storage:16.0.2
Crash Reporting com.google.firebase:firebase-crash:16.2.0
Crashlytics com.crashlytics.sdk.Android:crashlytics:2.9.5
Dynamic Links com.google.firebase:firebase-dynamic-links:16.1.1
Invites com.google.firebase:firebase-invites:16.0.3
In-App Messaging com.google.firebase:firebase-inappmessaging:17.0.1
In-App Messaging Display com.google.firebase:firebase-inappmessaging-display:17.0.1
ML Kit: Model Interpreter com.google.firebase:firebase-ml-model-interpreter:16.2.0
ML Kit: Vision com.google.firebase:firebase-ml-vision:17.0.0
ML Kit: Image Labeling com.google.firebase:firebase-ml-vision-image-label-model:15.0.0
Performance Monitoring com.google.firebase:firebase-perf:16.1.0
Realtime Database com.google.firebase:firebase-database:16.0.2
Remote Config com.google.firebase:firebase-config:16.0.0
N'oubliez pas non plus d'ajouter apply plugin: 'com.google.gms.google-services'
au bas de build.gradle au niveau de l'application.
Sync and Build ...
Pour moi, tout ce que j'ai utilisé, ce sont des annonces firebase et cela a commencé à donner cette erreur lorsque le sdk a été mis à jour. Je l'ai corrigé en ajoutant le noyau de base de feu.
implementation 'com.google.firebase:firebase-core:16.0.1'
Veuillez mettre à niveau le chemin d'accès aux classes de build gradle et les services Google comme suit
classpath 'com.Android.tools.build:gradle:3.1.2'
classpath 'com.google.gms:google-services:3.3.0'