Невозможно использовать зависимости Google Analytics и Firebase в то же время - PullRequest
0 голосов
/ 12 марта 2019

Обмен моими зависимостями gms:

implementation 'com.google.android.gms:play-services-location:15.0.1'
implementation 'com.google.android.gms:play-services-maps:15.0.1'
implementation 'com.google.android.gms:play-services-analytics:16.0.0'
implementation 'com.google.android.gms:play-services-auth:16.0.0'
implementation 'com.google.firebase:firebase-core:16.0.3'
implementation 'com.google.firebase:firebase-messaging:17.3.0'
implementation 'com.google.code.gson:gson:2.8.2'

Я получаю сообщение об ошибке при создании приложения. Поделиться ошибками.

org.gradle.execution.MultipleBuildFailures: Сборка завершена с 1 ошибкой. в org.gradle.initialization.DefaultGradleLauncher $ ExecuteTasks.run (DefaultGradleLauncher.java:358) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:300) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:292) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:174) в org.gradle.internal.operations.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:90) в org.gradle.internal.operations.DelegatingBuildOperationExecutor.run (DelegatingBuildOperationExecutor.java:31) в org.gradle.initialization.DefaultGradleLauncher.runTasks (DefaultGradleLauncher.java:219) в org.gradle.initialization.DefaultGradleLauncher.doBuildStages (DefaultGradleLauncher.java:149) в org.gradle.initialization.DefaultGradleLauncher.executeTasks (DefaultGradleLauncher.java:124) в org.gradle.internal.invocation.GradleBuildController $ 1.call (GradleBuildController.java:77) в org.gradle.internal.invocation.GradleBuildController $ 1.call (GradleBuildController.java:74) в org.gradle.internal.work.DefaultWorkerLeaseService.withLocks (DefaultWorkerLeaseService.java:154) в org.gradle.internal.work.StopShieldingWorkerLeaseService.withLocks (StopShieldingWorkerLeaseService.java:38) в org.gradle.internal.invocation.GradleBuildController.doBuild (GradleBuildController.java:96) в org.gradle.internal.invocation.GradleBuildController.run (GradleBuildController.java:74) в org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run (BuildModelActionRunner.java:55) в org.gradle.launcher.exec.ChainingBuildActionRunner.run (ChainingBuildActionRunner.java:35) в org.gradle.launcher.exec.ChainingBuildActionRunner.run (ChainingBuildActionRunner.java:35) в org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run (ValidatingBuildActionRunner.java:32) at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner $ 3.run (RunAsBuildOperationBuildActionRunner.java:50) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:300) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:292) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:174) в org.gradle.internal.operations.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:90) в org.gradle.internal.operations.DelegatingBuildOperationExecutor.run (DelegatingBuildOperationExecutor.java:31) at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run (RunAsBuildOperationBuildActionRunner.java:45) at org.gradle.tooling.internal.provider.SubscribeableBuildActionRunner.run (SubscribeableBuildActionRunner.java:51) в org.gradle.launcher.exec.InProcessBuildActionExecuter $ 1.transform (InProcessBuildActionExecuter.java:47) в org.gradle.launcher.exec.InProcessBuildActionExecuter $ 1.transform (InProcessBuildActionExecuter.java:44) в org.gradle.composite.internal.DefaultRootBuildState.run (DefaultRootBuildState.java:79) в org.gradle.launcher.exec.InProcessBuildActionExecuter.execute (InProcessBuildActionExecuter.java:44) в org.gradle.launcher.exec.InProcessBuildActionExecuter.execute (InProcessBuildActionExecuter.java:30)в org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute (BuildTreeScopeBuildActionExecuter.java:39) в org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute (BuildTreeScopeBudletoj.in.execute (ContinuousBuildActionExecuter.java:80) по адресу org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute (ContinuousBuildActionExecuter.java:53) по адресу org.gradle.tooling.internal.provider.SildexAupSecutorUecuup.internal.provider.GradleThreadBuildActionExecuter.execute (GradleThreadBuildActionExecuter.java:25) в org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExec.59) в org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute (StartParamsValidatingActionExecuter.java:31) в org.gradle.tooling.internal.provider.SessionFailureReportingActionExolter.exava..internal.provider.SessionFailureReportingActionExecuter.execute (SessionFailureReportingActionExecuter.java:44) в org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute (SetupLoggingActionExaction.ecu..up.Gup.Gup.Gup.Exment.olter.ol.(SetupLoggingActionExecuter.java:30) в org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild (ExecuteBuild.java:67) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute (BuildCommandOnly.java:36) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:122) в org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute (WatchForDisconnection.java:37) в org.gradle.launcher.daapimon.ver.DaemonCommandExecution.DaemonCommandExecution.java:122) в org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute (RequestStopIfSingleUsedDaemon.java:34) в org.gradle.launcher.daemon.server.apedExessioneom122) в org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call (ForwardClientInput.java: 74) в org.gradle.launcher.daemon.server.exec.ForwardClientInput $ 2.call (ForwardClientInput.java:72) в org.gradle.util.Swapper.swap (Swapper.java:38) в org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute (ForwardClientInput.java:72) по адресу org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:122) по адресу org.gradle.launcher..exec.LogAndCheckHealth.execute (LogAndCheckHealth.java:55) при org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:122) при org.gradle.launcher.daemon.server.exec.LogToClient.doBuild (LogToClient.java:62) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute (BuildCommandOnly.java:36)в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:122) в org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild (EstablishBuildEnvironment.java:81) в org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute (BuildCommandOnly.java:36) в org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed (DaemonCommandExecution.java:122) в org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy $ 1.run (StartBuildOrRespondWithBusy.java:50) в org.gradle.launcher.daemon.server.DaemonStateCoordinator $ 1.run (DaemonStateCoordinator.java:295) в org.gradle.internal.concurrent.ExecutorPolicy $ CatchAndRecordFailures.onExecute (ExecutorPolicy.java:63) в org.gradle.internal.concurrent.ManagedExecutorImpl $ 1.run (ManagedExecutorImpl.java:46) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:617) в org.gradle.internal.concurrent.ThreadFactoryImpl $ ManagedThreadRunnable.run (ThreadFactoryImpl.java:55) на java.lang.Thread.run (Thread.java:745) Вызвано: org.gradle.api.tasks.TaskExecutionException: не удалось выполнить задачу ': app: mergeExtDexArmv7Tst'. в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:110) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute (ExecuteActionsTaskExecuter.java:77) в org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute (OutputDirectoryCreatingTaskExecuter.java:51) в org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute (SkipUpToDateTaskExecuter.java:59) в org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute (ResolveTaskOutputCachingStateExecuter.java:54) в org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute (ValidatingTaskExecuter.java:59) в org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute (SkipEmptySourceFilesTaskExecuter.java:101) в org.gradle.api.internal.tasks.execution.FinalizeInputFilePropertiesTaskExecuter.execute (FinalizeInputFilePropertiesTaskExecuter.java:44) в org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute (CleanupStaleOutputsExecuter.java:91) в org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute (ResolveTaskArtifactStateTaskExecuter.java:62) в org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute (SkipTaskWithNoActionsExecuter.java:59) в org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute (SkipOnlyIfTaskExecuter.java:54) в org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute (ExecuteAtMostOnceTaskExecuter.java:43) в org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute (CatchExceptionTaskExecuter.java:34) в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter $ 1.run (EventFiringTaskExecuter.java:51) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:300) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:292) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:174) в org.gradle.internal.operations.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:90) в org.gradle.internal.operations.DelegatingBuildOperationExecutor.run (DelegatingBuildOperationExecutor.java:31) в org.gradle.api.internal.tasks.execution.EventFiringTaskExecuter.execute (EventFiringTaskExecuter.java:46)в org.gradle.execution.taskgraph.LocalTaskInfoExecutor.execute (LocalTaskInfoExecutor.java:42) в org.gradle.execution.taskgraph.DefaultTaskExecutionGraph $ BuildOperationAwareWorkItemExecutor.execute (DefaultTaskExecutionGraph.java:277) в org.gradle.execution.taskgraph.DefaultTaskExecutionGraph $ BuildOperationAwareWorkItemExecutor.execute (DefaultTaskExecutionGraph.java:262) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ ExecutorWorker $ 1.execute (DefaultTaskPlanExecutor.java:135) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ ExecutorWorker $ 1.execute (DefaultTaskPlanExecutor.java:130) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ ExecutorWorker.execute (DefaultTaskPlanExecutor.java:200) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ ExecutorWorker.executeWithWork (DefaultTaskPlanExecutor.java:191) в org.gradle.execution.taskgraph.DefaultTaskPlanExecutor $ ExecutorWorker.run (DefaultTaskPlanExecutor.java:130) ... еще 6 Вызывается: org.gradle.internal.UncheckedException: com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: ошибка при объединении декс-архивов : Тип программы уже представлен: com.google.android.gms.internal.measurement.zzu Узнайте, как решить проблему в https://developer.android.com/studio/build/dependencies#duplicate_classes. в org.gradle.internal.UncheckedException.throwAsUncheckedException (UncheckedException.java:63) в org.gradle.internal.UncheckedException.throwAsUncheckedException (UncheckedException.java:40) в org.gradle.internal.reflect.JavaMethod.invoke (JavaMethod.java:76) в org.gradle.api.internal.project.taskfactory.StandardTaskAction.doExecute (StandardTaskAction.java:46) в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:39) в org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute (StandardTaskAction.java:26) в org.gradle.api.internal.AbstractTask $ TaskActionWrapper.execute (AbstractTask.java:801) в org.gradle.api.internal.AbstractTask $ TaskActionWrapper.execute (AbstractTask.java:768) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter $ 1.run (ExecuteActionsTaskExecuter.java:131) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:300) в org.gradle.internal.operations.DefaultBuildOperationExecutor $ RunnableBuildOperationWorker.execute (DefaultBuildOperationExecutor.java:292) в org.gradle.internal.operations.DefaultBuildOperationExecutor.execute (DefaultBuildOperationExecutor.java:174) в org.gradle.internal.operations.DefaultBuildOperationExecutor.run (DefaultBuildOperationExecutor.java:90) в org.gradle.internal.operations.DelegatingBuildOperationExecutor.run (DelegatingBuildOperationExecutor.java:31) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction (ExecuteActionsTaskExecuter.java:120) в org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions (ExecuteActionsTaskExecuter.java:99) ... еще 34 Вызывается: com.android.build.api.transform.TransformException: java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: ошибка при объединении декс-архивов: Тип программы уже представлен: com.google.android.gms.internal.measurement.zzu Узнайте, как решить проблему в https://developer.android.com/studio/build/dependencies#duplicate_classes. на com.android.build.gradle.internal.tasks.DexMergingTaskDelegate.run (DexMergingTask.kt: 326) на com.android.build.gradle.internal.tasks.DexMergingTask.taskAction (DexMergingTask.kt: 132) at sun.reflect.GeneratedMethodAccessor939.invoke (неизвестный источник) at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43) в java.lang.reflect.Method.invoke (Method.java:498)at org.gradle.internal.reflect.JavaMethod.invoke (JavaMethod.java:73) ... еще 47 Причин: java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: ошибкапри объединении архивов dex: тип программы уже представлен: com.google.android.gms.internal.measurement.zzu Узнайте, как решить проблему в https://developer.android.com/studio/build/dependencies#duplicate_classes. в sun.reflect.NativeConstructorAccessorImpl.newInstance0 (собственный метод) на солнце.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62) при sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45) при java.lang.reflect.Constructor.newInstance (Constructor.java:423) в java.util.concurrent.ForkJoinTask.getThrowableException (ForkJoinTask.java:593) в java.util.concurrent.ForkJoinTask.reportException (ForkJoinTask.java:677) в java.util.concurrent.ForkJoin.asin.asin.ask.build.gradle.internal.tasks.DexMergingTaskDelegate.run (DexMergingTask.kt: 316) ... еще 52 Причина: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: ошибка при объединении архивов dex: тип программы уже присутствует: com.google.android.gms.internal.measurement.zzu Узнайте, как решить проблему, по адресу https://developer.android.com/studio/build/dependencies#duplicate_classes. по адресу java.util.concurrent.ForkJoinTask $ AdaptedCallable.exec (ForkJoinTask.java:1431) по адресу java.util.concurrent.ForkJoinTask.doExec (ForkJoin: 289) в java.util.concurrent.ForkJoinPool $ WorkQueue.runTask (ForkJoinPool.java:1056) в java.util.concurrent.ForkJoinPool.runWorker (ForkJoinPool.java:1692r).ForkJoinWorkerThread.java:157) Вызвано: com.android.builder.dexing.DexArchiveMergerException: ошибка при объединении архивов dex: тип программы уже существует: com.google.android.gms.internal.measurement.zzu Подробнее о том, как решить проблему, см.https://developer.android.com/studio/build/dependencies#duplicate_classes. на com.android.builder.dexing.D8DexArchiveMerger.getExceptionToRethrow (D8DexArchiveMerger.java:131) на com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives (D8DexArchiveMerger.java:118) по адресу com.android.build.gradle.internal.transforms.DexMergerTransformCallable.call (DexMergerTransformCallable.jilddlegra.bu.gra.bu.in.in.in.in.tin.t).DexMergerTransformCallable.call (DexMergerTransformCallable.java:37) в java.util.concurrent.ForkJoinTask $ AdaptedCallable.exec (ForkJoinTask.java:1424) ... еще 4, вызванных: com.android.toilaзавершите на com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler (ExceptionUtils.java:70) на com.android.tools.r8.utils.ExceptionUtils.withD8CompilationHandler (ExceptionUtils.java:43) на com.android.tools.r8.D8.run (D8.java:94) на com.android.builder.dexing.D8DexArchiveMerger.mergeDexArchives (D8DexArchiveMerger.java:116) ... еще 7 причин: com.android.tools.r8.utils.AbortException: Ошибка: тип программы уже присутствует: com.google.android.gms.internal.measurement.zzu на com.android.tools.r8.utils.Reporter.failIfPendingErrors (Reporter.java:89) на com.android.tools.r8.utils.Reporter.fatalError (Reporter.java:60) на com.android.tools.r8.utils.ExceptionUtils.withCompilationHandler (ExceptionUtils.java:64) ... еще 10

Сборка будет успешной, если мы удалим "com.google.android.gms: play-services-analytics: 16.0.0".

Сборка также будет успешной, если мы удалим зависимости от firebase.

implementation 'com.google.firebase:firebase-core:16.0.3'
   implementation 'com.google.firebase:firebase-messaging:17.3.0'

Я не могу одновременно использовать Google Analytics и Firebase.Пожалуйста, помогите, если у вас есть какие-либо идеи по этому поводу?

Обмен информацией об ошибке плагина Google Gradle:

В проекте «приложение» разрешенная зависимость библиотеки служб Google Play зависит от другой в точной версии (например, «[15.0.4]», но не разрешается до этой версии. Поведение, демонстрируемое библиотекой быть неизвестным.

Сбой зависимости: com.google.android.gms: play-services-tagmanager-v4-impl: 16.0.0 -> com.google.android.gms: play-servic es-measure-base @ [15.0.4], но базовая версия play-services-Measurement была 16.0.2.

Следующие зависимости являются проектными зависимостями, которые являются прямыми или имеют переходные зависимости, которые приводят к искусственному вопрос. - «Приложение» проекта зависит от проекта armv7TstCompileClasspath, который зависит от com.google.firebase: firebase-core @ 1 6.0.3 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.android.gms: play-service s-measurement-base@16.0.2 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.android.gms: play-service s-measurement-api@16.0.1 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.android.gms: play-service s-analytics-impl@16.0.0 - Проектное приложение зависит от проекта armv7TstCompileClasspath, который зависит от com.google.android.gms: play-service s-analytics@16.0.0 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.firebase: firebase-analyt ics-impl@16.2.1 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.android.gms: play-service s-tagmanager-v4-impl@16.0.0 - «Приложение» проекта зависит от проекта «armv7TstCompileClasspath», который зависит от com.google.firebase: firebase-analyt ics@16.0.3 - Проектное приложение зависит от проекта armv7TstCompileClasspath, который зависит от com.google.firebase: firebase-measure ement-connector-impl@17.0.1

Для расширенной отладочной информации выполните Gradle из командной строки с помощью ./gradlew --info: app: assemblyDebug, чтобы увидеть пути зависимости к артефакт. Это сообщение об ошибке пришло из Google-сервисов Gradle плагин, сообщить о проблемах на https://github.com/google/play-services-plugins и отключить, добавив "googleServices {disableVersionCheck = false}" для вашего build.gradle файл.

Ответы [ 2 ]

1 голос
/ 12 марта 2019

Все версии библиотек play-services и firebase должны быть либо:

  • Версии 15.x или ниже, все они должны быть одной и той же версии.
  • Версия 16.0 и выше, они могут быть разных версий. Для этого требуется плагин Gradle для служб Google версии 3.3 или более поздней.

Нет никакого способа смешать между <= 15.x и> = 16.x. Поэтому вам нужно либо понизить Firebase до 15.x, либо (что более вероятно) обновить Play Service до 16.x. См. Документацию для последней версии Play Services .

Также см .:

1 голос
/ 12 марта 2019

Понизьте версию всех ваших зависимостей до 12.0.1, это может решить вашу проблему

implementation 'com.google.android.gms:play-services-location:11.0.1'
implementation 'com.google.android.gms:play-services-maps:12.0.1'
implementation 'com.google.android.gms:play-services-analytics:12.0.1'
implementation 'com.google.android.gms:play-services-auth:12.0.1'
implementation 'com.google.firebase:firebase-core:12.0.1'
implementation 'com.google.firebase:firebase-messaging:12.0.1'
implementation 'com.google.code.gson:gson:2.8.2'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...