com.google.android.gms: play-services-measure-base está siendo solicitado por varias otras bibliotecas

173

Actualicé a gradle 4.0.1 y comencé a recibir el siguiente error

La biblioteca com.google.android.gms: play-services-medición-base está siendo solicitada por varias otras bibliotecas en [[15.0.4,15.0.4]], pero se resuelve en 15.0.2. Deshabilite el complemento y verifique su árbol de dependencias usando ./gradlew: app: dependencies.

Mi proyecto no usa esa dependencia, así que lo busqué globalmente y solo aparece dentro

compilación / intermedios / lint-cache / maven.google / com / google / android / gms / group-index.xml

como esta linea

<play-services-measurement-base versions="15.0.0,15.0.2"/>

Así que intenté eliminar mi carpeta de compilación y limpiar el proyecto, pero lo regenera con los mismos valores: / por lo tanto, el error sigue siendo

Ilja
fuente
Resuelto aquí: yo también enfrenté el mismo problema al intentar agregar crashlytics en firebase. Por favor, actualice la versión más reciente de dependencias para com.google.android.gms: play-servicios y com.google.firebase: ...... . Resolverá los problemas automáticamente
Priya Rajan
¡Tenía la última versión y obtuve este error, así que lo bajé a 15.0.1 y funcionó!
landrykapela
Vaya a este problema y destaque. Parece que hay muchos problemas porque había muchas bibliotecas inéditas de jCenter.
Patricio Sard

Respuestas:

173

El problema real se discute en la nota de lanzamiento del 23 de mayo de https://developers.google.com/android/guides/releases#may_23_2018

Básicamente, debe incluir todas las bibliotecas de Play Services y Firebase en su última versión ( que puede ser diferente para cada una desde la versión 15 ). Puede usar https://mvnrepository.com/ para encontrar la última versión de cada biblioteca.

Ver también: https://firebase.google.com/support/release-notes/android#20180523

Nico
fuente
55
maven.google.com también es adecuado para buscar las versiones publicadas de estas bibliotecas.
PaulR
52
Salvador de la vida. Google debería optimizar esta versión. Es un dolor
Dibzmania
1
Tu respuesta me ayudó a resolver esto. Pero tuve que usar esta publicación para obtener las versiones correctas incluidas en mi proyecto y superar los errores.
Jacob Joel
12
Utilicé la última versión de todas las bibliotecas pero el error persiste.
Estudiante
2
Si actualiza todas las bibliotecas a sus últimas versiones respectivas, recibirá una advertencia que dice "Todas las bibliotecas gms / firebase deben usar exactamente la misma especificación de versión (mezclar versiones puede provocar fallas en el tiempo de ejecución)". ¿Se espera esto? ¿Cómo se resuelve esto y el problema original?
user3369427
86

La única solución de trabajo para mí:

ponlo en la parte inferior de build.gradle

com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true
htw
fuente
10
Para mí, esta solución oculta el mensaje, que luego se genera de otra manera: "La dependencia de Android 'com.google.android.gms: play-services-measure-base' tiene una versión diferente para la compilación (15.0.4) y el tiempo de ejecución ( 16.0.0) classpath. Debe configurar manualmente la misma versión a través de DependencyResolution "
ARLabs
Es la única solución que funcionó para mí. Incluso con todas las bibliotecas de gradle actualizadas.
Neri
Funciona, pero úsalo como último recurso. Sincronicé todas las versiones de Google Play y Firebase, pero una biblioteca se negó a aceptar esa versión (estaba codificada para requerir una y solo una versión específica).
pmont
He aquí una broma, Firebase Android SDKs now have independent version numbers, allowing for more frequent, flexible updates..
Kimi Chiu
18
esto es lo peor que se puede hacer; ignorar el problema no es una "solución".
Martin Zeitler
31

Asegúrese de mantener las dependencias de sus servicios de Google play y las dependencias de Firebase en la última versión.

También verifique todos sus archivos gradle, nivel de módulo y nivel de proyecto, solo debe haber una versión común de dependencia en todos los módulos. Se puede resolver manteniendo esas versiones en el nivel de proyecto variable de gradle.

Verifique aquí la versión de actualización de los servicios de Google Play

Servicios de Google Play más recientes

Verifique aquí la versión actualizada de Firebase

Firebase Latest

Verifique aquí la versión actualizada de Firebase para Android

Firebase Android más reciente

abitcode
fuente
Esto fue útil. Usaba react-native y tenía que actualizar los paquetes que estábamos usando a lo último en estos enlaces.
publicknowledge
¡Puede suceder incluso si depende de una sola biblioteca de Google! Vea mi respuesta de por qué (muy antiguo complemento Android Gradle).
Nates
13

yo actualice

implementation 'com.google.android.gms:play-services-analytics:16.0.3'

Y funciona para mi

Amine M'hamed
fuente
1
Gracias. Hice lo mismo, funciona muy bien.
Nguyễn Anh Tuấn
1
¿Dónde necesito poner esta línea?
Anand_5050
en android / app / build.gradle @ Anand_5050
Swati
9

cambiar mi build.gradlea lo siguiente funcionó para mí:

ext {
  googlePlayServicesVersion   = "15.0.1"
}

allprojects {
  repositories {
      mavenLocal()
      maven { url 'http://maven.google.com' }
      jcenter { url "http://jcenter.bintray.com/" }
      google()
      maven {
        // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm
        url "$rootDir/../node_modules/react-native/android"
      }

      configurations.all {
        resolutionStrategy {
            force "com.google.android.gms:play-services-basement:$googlePlayServicesVersion"
            force "com.google.android.gms:play-services-tasks:$googlePlayServicesVersion"
        }
      }
  }
}
mk7danny
fuente
gracias, fue útil para mí y resolvió mi error. al menos me dio instrucciones para los siguientes errores, los puse en la misma resolución
Estrategia
Para aclarar, está agregando el ext {...}bloque para forzar la versión que soluciona el problema
Aaron
7

En mi caso, usar las últimas versiones de los siguientes dependenciesresolvió mi problema:

'com.google.android.gms:play-services-analytics:16.0.1'
'com.google.android.gms:play-services-tagmanager:16.0.1'
Murat
fuente
5

Esto puede suceder si su complemento Android Gradle es muy antiguo, ¡incluso si solo está usando una única lib de Google! Aparentemente, todas las bibliotecas de Google solían ser exactamente la misma versión. Ahora no necesitan ser lo mismo, solo lo último. Al especificar incluso una sola biblioteca, obtiene dependencias donde las versiones no coinciden y el viejo complemento Android Gradle vomita.

Establecer una versión más nueva como:

buildscript {
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.2'
    }
}

Es posible que necesite actualizar su Gradle para usar el complemento más nuevo (se lo dirá)

Nates
fuente
3

La única solución que funciona para mí (encontré algunas en SOF) (no tengo el enlace) es:

en la parte superior principal build.grale

allprojects {

subprojects {
    project.configurations.all {
        resolutionStrategy.eachDependency { details ->
            if (details.requested.group == 'com.google.android.gms'
                    && !details.requested.name.contains('multidex')) {
                details.useVersion "x.y.z"
            }
        }
    }
}
issamux
fuente
3
ahora recibo un error diferenteThe library com.google.firebase:firebase-analytics is being requested by various other libraries at [[16.0.3,16.0.3]], but resolves to 16.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.
Eric Kim
3

Añadir a la lista de sus dependencias. Ahora necesita tenerlo para el trabajo adecuado de todas las dependencias de Firebase:

implementation 'com.google.firebase:firebase-core:16.0.1'
PavelGP
fuente
3

Tuve el mismo problema

Solo asegúrese de tener las últimas versiones de todas las dependencias. Usé las versiones actuales para Firebase core y auth. Las versiones más nuevas tienen correcciones de errores.

Puede obtener las últimas versiones desde aquí: https://firebase.google.com/support/release-notes/android

Usando la última versión en el momento actual:

en app / build.gradle:

dependencies {
implementation 'com.google.firebase:firebase-core:16.0.6'
implementation 'com.google.firebase:firebase-auth:16.1.0'
}
shellym
fuente
3

Un problema similar surgió conmigo cuando traté de agregar Firebase Database a mi proyecto.

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

El problema puede resolverse degradando o actualizando ambas versiones a un nivel similar. Así que bajé la base de datos de Firebase a

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

¡Y funcionó! Todas las versiones disponibles se pueden buscar en este sitio: https://mvnrepository.com/

Harshit Agarwall
fuente
1
Trabajó para mí después de buscar muchos artículos. Se produjo un error al agregar la base de datos de Firebase. Gracias
gauravsngarg
2

Puede encontrar la biblioteca que utiliza esta dependencia utilizando:

$ ./gradlew app:dependencies
Nico
fuente
3
Esto no funciona, solo escupe el mismo error sin un gráfico de dependencia.
jasonhudgins
3
debe eliminar el complemento apply: línea 'com.google.gms.google-services' antes de intentar esto para evitar mostrar un error
Kata Lune
1
Deshabilité el complemento y verifiqué las dependencias. Pero no había ninguna biblioteca que dependiera de 15.0.4 como se indicó en la excepciónThe library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[15.0.4,15.0.4], [16.0.0,16.0.0]], but resolves to 16.0.0.
miszmaniac
1
@miszmaniac Tuve exactamente el mismo problema. Bajar la versión de ambos play-services-analyticsy firebase-corepara 16.0.0resolver el problema.
NoHarmDan
Este nuevo sistema de versiones no iguales para la biblioteca Firebase es una tragedia por ahora. Ayer tuvimos un bloqueo aleatorio al inicio de la aplicación, porque firebase no pudo iniciar () por alguna extraña razón ... tuvimos que deshabilitar (en manifiesto) firebase-perf para poder eliminar el bloqueo
miszmaniac
2

Estaba teniendo un error The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[16.0.2,16.0.2]], but resolves to 16.0.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

La ejecución ./gradlew :app:dependenciesrevelará qué dependencias requieren dependencias incorrectas (las que están entre corchetes). Para mí, el problema provenía de firebase-core: 16.0.3 como se muestra a continuación. Lo arreglé degradando firebase-core a 16.0.1

+--- com.google.firebase:firebase-core:16.0.3
|    +--- com.google.firebase:firebase-analytics:16.0.3
|    |    +--- com.google.android.gms:play-services-basement:15.0.1
|    |    |    \--- com.android.support:support-v4:26.1.0 (*)
|    |    +--- com.google.android.gms:play-services-measurement-api:[16.0.1] -> 16.0.1
|    |    |    +--- com.google.android.gms:play-services-ads-identifier:15.0.1
|    |    |    |    \--- com.google.android.gms:play-services-basement:[15.0.1,16.0.0) -> 15.0.1 (*)
|    |    |    +--- com.google.android.gms:play-services-basement:15.0.1 (*)
|    |    |    +--- com.google.android.gms:play-services-measurement-base:[16.0.2] -> 16.0.2
Eric Kim
fuente
2

Para mí, este error apareció después de integrar Crashlytics a través de Firebase, debido a un conflicto de versiones entre

implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.android.gms:play-services-location:15.0.1'

Primero intenté degradar Firebase Core a 15.0.1, pero parece que no existe tal versión, solo 15.0.0y 15.0.2. En cambio, tuve que degradar ambos a la versión 15.0.0, así que terminé con

implementation 'com.google.firebase:firebase-core:15.0.0'
implementation 'com.google.android.gms:play-services-location:15.0.0'

Así que ahora está funcionando, pero recibo esas molestas advertencias de Lint sobre las versiones más nuevas disponibles. Esta debacle de versiones es un desastre.

Magnus W
fuente
1

Me encontraba con este problema y noté que las notas de la versión mencionaban:

Firebase ahora requiere que el archivo gradle de la aplicación enumere explícitamente com.google.firebase: firebase-core como dependencia para que los servicios de Firebase funcionen como se espera.

Hacer firebase-coreuna dependencia de la aplicación (así como una dependencia de la biblioteca) resolvió este problema para mí.

Tad
fuente
1

1. Abra el nivel de proyecto build.gradle

Actualiza la com.google.gms:google-servicesversión a la última. Seguimiento de la última versión . En el momento de la respuesta más reciente es 4.1.0.

2. Abra el nivel de aplicación build.gradle

Actualice la dependencia a continuación si usa alguna. Tenga en cuenta que firebase tiene versiones individuales para cada dependencia ahora.

Use las últimas bibliotecas de Firebase . En el momento de la respuesta, las últimas versiones están a continuación.

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

Sincronizar y construir ...

Khemraj
fuente
1

Noté que los registros de depuración mencionan la versión anterior de firebase-analytics (16.0.0). Agregar explícitamente la última versión solucionó el problema:

implementation "com.google.firebase:firebase-analytics:16.0.3"
fumar
fuente
1

Actualice todas sus dependencias a la última versión y solucionará el problema.

No es necesario agregar
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

Conducirá a fallas si usa versiones mixtas.

RakeshGupta
fuente
1

Supongo que el siguiente error se debe a las diferentes versiones de las dependencias de Firebase. Para mí, cambiar la versión de todas las dependencias que estoy implementando en mi proyecto a 16.0.1, funcionó de maravilla.

Para mí, el error fue creado por la línea: com.google.firebase:firebase-auth:16.0.2

Y lo cambié a: com.google.firebase:firebase-auth:16.0.1

Y funcionó ... Espero que esto ayude.

Vipin George
fuente
1

En mi caso, esto resuelve el problema:

implementation 'com.google.android.gms:play-services-analytics:16.0.1'
Kishore Reddy
fuente
1

En mi caso, he reemplazado mi archivo build.gradle esta línea

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

con

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

y agregó esta línea

implementation 'com.google.android.gms:play-services-location:15.0.0'

Ahora esta bien

Maddu Swaroop
fuente
1

Tengo un problema similar que se resolvió mediante:

  1. En el nivel de aplicación gradle: actualice todas las dependencias de Firebase a la última versión más reciente
  2. En el nivel de proyecto gradle: actualice la dependencia a la última:, gms.google-servicesen mi caso fue: 'com.google.gms: google-services: 4.2.0'
tabebqena
fuente
Aquí es donde reside la magia. Todas las dependencias en la aplicación / build.gradle y luego el archivo build.gradle superior actualizan todas las dependencias
leeCoder
1

Cambié las siguientes dependencias en mi proyecto para que funcione.

build.gradle (aplicación):

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

a

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

build.gradle (aplicación):

classpath 'com.google.gms:google-services:4.0.1'

a

classpath 'com.google.gms:google-services:4.2.0'

**** Nota :

Use el siguiente enlace para el uso actualizado de las bibliotecas que tienen dependencias https://firebase.google.com/docs/android/setup

Muhammad Ali
fuente
1

Usa la versión actualizada de Firebase y evita los extras. Esto es suficiente (pero si necesita usar espacio de almacenamiento o ... también debe agregarlos)

//FIREBASE
implementation 'com.google.firebase:firebase-core:17.2.0'
 implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
//ADMob
implementation 'com.google.android.gms:play-services-ads:18.2.0'
//PUSH NOTIFICATION
implementation 'com.google.firebase:firebase-messaging:20.0.0'
implementation 'com.google.firebase:firebase-core:17.2.0'

y actualice los servicios de google:

 classpath 'com.google.gms:google-services:4.3.2'
sana ebadi
fuente
Gracias, el uso de estas versiones resolvió mi problema.
SriTeja Chilakamarri
0

Si el mensaje es:

La biblioteca com.google.android.gms: play-services-measure-base está siendo solicitada por varias otras bibliotecas en [[15.0.4,15.0.4]], pero se resuelve en 15.0.2 . Deshabilite el complemento y verifique su árbol de dependencias usando ./gradlew: app: dependencies.

Cambiar la versión de todas las bibliotecas de servicios de reproducción que está utilizando a la que necesita ( 15.0.2 en este caso) podría resolver el problema.

En mi caso, he cambiado:

implementation 'com.google.android.gms:play-services-base:+' -> implementation 'com.google.android.gms:play-services-base:15.0.2'
implementation 'com.google.android.gms:play-services-location:+' -> implementation 'com.google.android.gms:play-services-location:15.0.2'
implementation 'com.google.android.gms:play-services-maps:+' -> implementation 'com.google.android.gms:play-services-maps:15.0.2'
implementation 'com.google.android.gms:play-services-auth:+' -> implementation 'com.google.android.gms:play-services-auth:15.0.2'
implementation 'com.google.android.gms:play-services-places:+' -> implementation 'com.google.android.gms:play-services-places:15.0.2'
Jose Q
fuente
0

Resuelto aquí: yo también enfrenté el mismo problema al intentar agregar crashlytics en firebase. Por favor, actualice la versión más reciente de dependencias para com.google.android.gms: play-servicios y com.google.firebase: ...... . Resolverá automáticamente los problemas.

Priya Rajan
fuente
0

Tuve el mismo problema cuando intenté agregar la implementación de la base de datos de Firebase, si comenté que la línea funciona, así que después de algunos intentos fui a https://firebase.google.com/docs/android/setup

Allí verifiqué las versiones de las bibliotecas disponibles y mi núcleo de Firebase estaba en 16.0.1 (la versión actual es 16.0.4), así que lo cambié manualmente y funcionó bien, la compilación y la sincronización tuvieron éxito.

Anibal
fuente
0

En mi caso simplemente elimino

implementation "com.google.android.gms:play-services-ads:16.0.0

y agregar dependencias de anuncios firebase

implementation 'com.google.firebase:firebase-ads:17.1.2'
code4rox
fuente
0

Tuve el mismo problema. Tienes que eliminar los dos puntos: después de la versión en el gradle (es un error).

Esta configuración funcionó para mí:

implementation 'com.google.firebase:firebase-firestore:17.1.5'

También establezca multiDexEnabled en true en el gradle (si obtiene el error DexOverflowException):

    android {
        compileSdkVersion 27
..
            multiDexEnabled true
        }
vive el amor
fuente