tutorial studio services play para guardar google gms descargar datos android firebase google-play-services

android - studio - google-services.json download



La compilaciĆ³n falla con ''Tipo de programa ya presente: android.arch.core.util.Function'' (4)

Después de actualizar mis dependencias de Firebase y Play Services, así como el complemento de Play Services, mi proyecto no se puede construir. He intentado varias Reconstrucciones limpias y mi aplicación tiene MultiDex habilitado. Volver a mis versiones de dependencia originales tampoco es una opción, ya que agregué una dependencia para las funciones de la nube para las que la última versión es incompatible con mis otras dependencias de base de fuego. Puedo ver lo siguiente en Problemas de Android

Program type already present: android.arch.core.util.Function Message{kind=ERROR, text=Program type already present: android.arch.core.util.Function, sources=[Unknown source file], tool name=Optional.of(D8)}

También veo un mensaje de error en Ejecutar tareas

org.gradle.api.tasks.TaskExecutionException: Execution failed for task '':app:transformDexArchiveWithExternalLibsDexMergerForDebug''. at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100) 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: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:

Mis dependencias de gradle

dependencies { implementation fileTree(include: [''*.jar''], dir: ''libs'') debugImplementation ''com.squareup.leakcanary:leakcanary-android:1.5.4'' releaseImplementation ''com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'' implementation ''com.android.support:multidex:1.0.3'' //Android Support implementation ''com.android.support:support-v13:27.1.1'' implementation ''com.android.support:appcompat-v7:27.1.1'' implementation ''com.android.support:design:27.1.1'' implementation ''com.android.support:recyclerview-v7:27.1.1'' implementation "com.android.support:cardview-v7:27.1.1" implementation "com.android.support:customtabs:27.1.1" implementation ''com.android.support.constraint:constraint-layout:1.1.0'' implementation "com.android.support:support-v4:27.1.1" //Firebase implementation ''com.google.firebase:firebase-core:16.0.0'' implementation ''com.google.firebase:firebase-analytics:16.0.0'' implementation ''com.google.firebase:firebase-appindexing:15.0.1'' implementation ''com.google.firebase:firebase-auth:16.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation ''com.google.firebase:firebase-firestore:17.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation ''com.google.firebase:firebase-functions:16.0.1'' implementation ''com.google.firebase:firebase-messaging:17.0.0'' //implementation ''com.google.firebase:firebase-storage:16.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation(''com.crashlytics.sdk.android:crashlytics:2.9.1@aar'') { transitive = true } //implementation ''com.google.firebase:firebase-invites:16.0.0'' implementation ''com.google.firebase:firebase-config:16.0.0'' //Google Play implementation ''com.google.android.gms:play-services-ads:15.0.1'' implementation ''com.google.android.gms:play-services-places:15.0.1'' implementation ''com.google.android.gms:play-services-location:15.0.1'' //Stream Support implementation ''net.sourceforge.streamsupport:android-retrostreams:1.6.1'' implementation ''net.sourceforge.streamsupport:android-retroflow:1.6.1'' implementation ''net.sourceforge.streamsupport:android-retrofuture:1.6.1'' //Location implementation ''io.nlopez.smartlocation:library:3.3.3'' //Firebase UI implementation ''com.firebaseui:firebase-ui-firestore:4.0.0'' //Facebook implementation ''com.facebook.android:facebook-login:4.31.0'' //Search implementation ''com.algolia:algoliasearch-android:3.14.1'' //Butterknife implementation ''com.jakewharton:butterknife:8.8.1'' annotationProcessor ''com.jakewharton:butterknife-compiler:8.8.1'' //UI Elements for layout staggering implementation ''com.google.android:flexbox:0.3.2'' //Image Handling Library implementation ''com.facebook.fresco:fresco:1.8.0'' // UI Element for Country-code implementation ''com.hbb20:ccp:2.1.2'' // UI Element for OTP implementation ''com.github.GoodieBag:Pinview:v1.3'' //Loading indicator using shimmer implementation ''io.supercharge:shimmerlayout:2.0.0'' //UI Element for Tooltip implementation ''it.sephiroth.android.library.targettooltip:target-tooltip-library:1.3.15'' //Date/Time Pickers for Hangout Creation implementation ''com.wdullaer:materialdatetimepicker:3.5.1'' //UI Element from Drop-down boxes implementation(''com.weiwangcn.betterspinner:library-material:1.1.0'') { exclude group: ''com.android.support'', module: ''appcompat-v7'' exclude group: ''com.android.support'', module: ''appcompat-v4'' } //JSON Handling implementation ''com.google.code.gson:gson:2.8.2'' //Permissions using RxPermissions implementation ''com.tbruyelle.rxpermissions2:rxpermissions:0.9.5@aar'' //RxBindings for Platform implementation ''com.jakewharton.rxbinding2:rxbinding:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-design:2.1.1'' //Logging implementation ''com.jakewharton.timber:timber:4.6.0'' //Testing testImplementation ''junit:junit:4.12'' androidTestImplementation ''com.android.support.test:runner:1.0.2'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.2'' }


El tipo de programa ya está presente: android.arch.core.util.Function Message {kind = ERROR, text = El tipo de programa ya está presente: android.arch.core.util.Function, sources = [Archivo de origen desconocido], nombre de la herramienta = Opcional. de (D8)}

Tuve el mismo problema anterior, y fue porque no incluí el núcleo.

implementation ''com.google.firebase:firebase-core:16.0.1''

Notado que parte de su dependencia es 16.0.1, sugeriría que actualice el núcleo a 16.0.1 en lugar de 16.0.0.

Adjunto mi dependencia a continuación como referencia, espero que la encuentre útil.

implementation ''com.google.firebase:firebase-core:16.0.1'' implementation ''com.google.firebase:firebase-database:16.0.1'' implementation ''com.firebaseui:firebase-ui-database:4.1.0''


Encontré la solución que un gran chico publicó en GitHub. En lugar de degradar su base de datos firebaseUI, puede agregar dependencias comunes y de tiempo de ejecución de arch, que son las siguientes:

//Arch implementation "android.arch.core:runtime:1.1.1" implementation "android.arch.core:common:1.1.1"

Solo agréguelos a la sección de dependencias de su aplicación: módulo y ya sabe cómo construirlo.


Intenta reemplazar los archivos de gradle con:

buildscript { repositories { jcenter() google() } dependencies { classpath ''com.android.tools.build:gradle:3.1.2'' classpath ''com.google.gms:google-services:3.2.1'' } } allprojects { repositories { maven { url ''https://jitpack.io'' } jcenter() google() } }

Y Módulo: app grandle con:

apply plugin: ''com.android.application'' android { compileSdkVersion 27 buildToolsVersion "27.0.3" defaultConfig { applicationId "com.example.myapp" minSdkVersion 16 targetSdkVersion 27 multiDexEnabled true } buildTypes { debug{ debuggable true minifyEnabled false } release { debuggable false minifyEnabled true proguardFiles getDefaultProguardFile(''proguard-android.txt''), ''proguard-project.txt'' } } dexOptions { javaMaxHeapSize "4g" } repositories { jcenter() google() maven { url ''https://maven.google.com'' } } } dependencies { implementation fileTree(include: [''*.jar''], dir: ''libs'') debugImplementation ''com.squareup.leakcanary:leakcanary-android:1.5.4'' releaseImplementation ''com.squareup.leakcanary:leakcanary-android-no-op:1.5.4'' implementation ''com.android.support:multidex:1.0.3'' //Android Support implementation ''com.android.support:support-v13:27.1.1'' implementation ''com.android.support:appcompat-v7:27.1.1'' implementation ''com.android.support:design:27.1.1'' implementation ''com.android.support:recyclerview-v7:27.1.1'' implementation "com.android.support:cardview-v7:27.1.1" implementation "com.android.support:customtabs:27.1.1" implementation ''com.android.support.constraint:constraint-layout:1.1.0'' implementation "com.android.support:support-v4:27.1.1" //Firebase implementation ''com.google.firebase:firebase-core:16.0.0'' implementation ''com.google.firebase:firebase-analytics:16.0.0'' implementation ''com.google.firebase:firebase-appindexing:15.0.1'' implementation ''com.google.firebase:firebase-auth:16.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation ''com.google.firebase:firebase-firestore:17.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation ''com.google.firebase:firebase-functions:16.0.1'' implementation ''com.google.firebase:firebase-messaging:17.0.0'' //implementation ''com.google.firebase:firebase-storage:16.0.1'' //Maintain compatibility with com.firebaseui:firebase-ui-firestore implementation(''com.crashlytics.sdk.android:crashlytics:2.9.1@aar'') { transitive = true } //implementation ''com.google.firebase:firebase-invites:16.0.0'' implementation ''com.google.firebase:firebase-config:16.0.0'' //Google Play implementation ''com.google.android.gms:play-services-ads:15.0.1'' implementation ''com.google.android.gms:play-services-places:15.0.1'' implementation ''com.google.android.gms:play-services-location:15.0.1'' //Stream Support implementation ''net.sourceforge.streamsupport:streamsupport:1.6.0'' implementation ''net.sourceforge.streamsupport:streamsupport-cfuture:1.6.0'' implementation ''net.sourceforge.streamsupport:streamsupport-atomic:1.6.0'' implementation ''net.sourceforge.streamsupport:streamsupport-flow:1.6.0'' implementation ''net.sourceforge.streamsupport:streamsupport-literal:1.6.0'' //Location implementation ''io.nlopez.smartlocation:library:3.3.3'' //Firebase UI implementation ''com.firebaseui:firebase-ui-firestore:4.0.0'' //Facebook implementation ''com.facebook.android:facebook-login:4.32.0'' //Search implementation ''com.algolia:algoliasearch-android:3.14.1'' //Butterknife implementation ''com.jakewharton:butterknife:8.8.1'' annotationProcessor ''com.jakewharton:butterknife-compiler:8.8.1'' //UI Elements for layout staggering implementation ''com.google.android:flexbox:0.3.2'' //Image Handling Library implementation ''com.facebook.fresco:fresco:1.8.0'' // UI Element for Country-code implementation ''com.hbb20:ccp:2.1.2'' // UI Element for OTP implementation ''com.github.GoodieBag:Pinview:v1.3'' //Loading indicator using shimmer implementation ''io.supercharge:shimmerlayout:2.0.0'' //UI Element for Tooltip implementation ''it.sephiroth.android.library.targettooltip:target-tooltip-library:1.3.15'' //Date/Time Pickers for Hangout Creation implementation ''com.wdullaer:materialdatetimepicker:3.5.1'' //UI Element from Drop-down boxes implementation(''com.weiwangcn.betterspinner:library-material:1.1.0'') { exclude group: ''com.android.support'', module: ''appcompat-v7'' exclude group: ''com.android.support'', module: ''appcompat-v4'' } //JSON Handling implementation ''com.google.code.gson:gson:2.8.2'' //Permissions using RxPermissions implementation ''com.tbruyelle.rxpermissions2:rxpermissions:0.9.5@aar'' //RxBindings for Platform implementation ''com.jakewharton.rxbinding2:rxbinding:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-recyclerview-v7:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-appcompat-v7:2.1.1'' implementation ''com.jakewharton.rxbinding2:rxbinding-design:2.1.1'' //Logging implementation ''com.jakewharton.timber:timber:4.6.0'' //Testing testImplementation ''junit:junit:4.12'' androidTestImplementation ''com.android.support.test:runner:1.0.2'' androidTestImplementation ''com.android.support.test.espresso:espresso-core:3.0.2'' } apply plugin: ''com.google.gms.google-services''


Mi proyecto funciona con la última versión de las firebase core, database, messaging and auth de firebase core, database, messaging and auth y la última classpath ''com.google.gms:google-services:4.0.1''

App/build.gradle

dependencies { // Tab Layout and ViewPager implementation ''com.android.support:design:27.1.1'' // firebase dependencies // implementation ''com.firebaseui:firebase-ui-database:4.0.0'' Source of error implementation ''com.google.firebase:firebase-core:16.0.0'' implementation ''com.google.firebase:firebase-database:16.0.1'' implementation ''com.google.firebase:firebase-messaging:17.0.0'' implementation ''com.google.firebase:firebase-auth:16.0.1'' }

build.gradle

buildscript { dependencies { classpath ''com.android.tools.build:gradle:3.1.2'' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files classpath ''com.google.gms:google-services:4.0.1'' } }

El problema evoluciona al agregar la implementation ''com.firebaseui:firebase-ui-database:4.0.0''

Muestra este error:

Tipo de programa ya presente: android.arch.core.util.Function

Mensaje {kind = ERROR, texto = tipo de programa ya presente: android.arch.core.util.Function, sources = [Archivo de origen desconocido], nombre de la herramienta = Optional.of (D8)}

La solución fue degradar la implementation ''com.firebaseui:firebase-ui-database:4.0.0'' a la implementation ''com.firebaseui:firebase-ui-database:3.3.1'' siguiente manera:

App/build.gradle

dependencies { // Tab Layout and ViewPager implementation ''com.android.support:design:27.1.1'' // firebase dependencies implementation ''com.firebaseui:firebase-ui-database:3.1.1'' // No trouble in compiling implementation ''com.google.firebase:firebase-core:16.0.0'' implementation ''com.google.firebase:firebase-database:16.0.1'' implementation ''com.google.firebase:firebase-messaging:17.0.0'' implementation ''com.google.firebase:firebase-auth:16.0.1'' }

Espero que Google resuelva este problema en futuras actualizaciones.

Espero que haya ayudado!