Actualización de conflictos de versión a 8.4.0

197

Error :

Error de ejecución para la tarea ': aplicación: processDebugGoogleServices'. Corrija el conflicto de versión actualizando la versión del complemento de servicios de google (la información sobre la última versión está disponible aquí ) o actualizando la versión de com.google.android.gms a 8.3.0.

He hecho todas las cosas que he encontrado.

  dependencies {
            // This does not break the build when Android Studio is missing the JRebel for Android plugin.
            classpath 'com.zeroturnaround.jrebel.android:jr-android-gradle:1.0.+'
            classpath 'com.android.tools.build:gradle:2.0.0-alpha3'
            classpath 'com.google.gms:google-services:2.0.0-alpha3'

            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }

Y en la aplicación gradle

    compile 'com.google.android.gms:play-services:8.4.0'
hazlo
fuente

Respuestas:

336

Use estas dependencias para el proyecto build.gradle

dependencies {
    classpath 'com.android.tools.build:gradle:2.0.0-alpha3'
    classpath 'com.google.gms:google-services:2.0.0-alpha3'
}

y colóquelo al final del archivo build.gradle de nivel de aplicación (después de las dependencias).

apply plugin: 'com.google.gms.google-services'

No tengo idea de por qué poner esto al final (y no al principio) resuelve el error.

EDITAR 01/05/2016

Ok ... así que tratando de poner fin a todos los problemas que ustedes han enfrentado con mi solución

Este es mi nivel de aplicación final gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "your-app-name"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    jcenter()
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.android.support:design:23.1.1'
    compile 'com.mcxiaoke.volley:library:1.0.6@aar'
}

apply plugin: 'com.google.gms.google-services'

y este es mi nivel de proyecto final gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0-alpha3'
        classpath 'com.google.gms:google-services:2.0.0-alpha3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

Compare esto con sus propios archivos gradle y agregue o modifique cualquier valor que sea diferente de lo que he escrito.

sarasgupta
fuente
44
compile 'com.google.android.gms:play-services-auth:8.4.0También será requerido.
Shajeel Afzal
2
Siempre me pregunto cómo la gente tropieza con soluciones como esta. ¿Prueba y error? Rollos santos?
A. Steenbergen
77
¿Por qué poner eso apply plugin: 'com.google.gms.google-services'al final del archivo build.gradle funciona y ponerlo al principio falla?
toobsco42
8
Ninguna de las soluciones anteriores me funciona para 8.4.0. Todos fallan después del segundo 'Proyecto de reconstrucción' que ejecuto después de guardar build.gradle. La primera compilación funciona (o no falla en voz alta), la segunda da un error de aproximadamente 8.3.0 frente a 8.4.0. El uso de 'com.google.android.gms: play-services' en lugar de individuos falló. El uso de (`classpath 'com.google.gms: google-services: 2.0.0-alpha3' ') falló con otro error (en la segunda compilación), así que uso 1.5.0. El uso de Studio Preview no marcó la diferencia.
arberg
55
IMPORTANTE ¡No olvide agregar su archivo google-services.json! de lo contrario, fallará con el mensaje "Falta el archivo google-services.json de la carpeta raíz del módulo". Puede crear el archivo aquí: developers.google.com/analytics/devguides/collection/android/v4 Y como dicen los documentos, a continuación agregará este archivo a projectFolder / app (por lo que la raíz de su módulo de aplicación).
Martin Pfeffer
63

En el módulo de la aplicación (build.gradle)

Moviente :

apply plugin: 'com.google.gms.google-services'

hasta la última línea resolvió el problema.

Caballero
fuente
3
para cualquiera que se pregunte por qué funciona mover la apply plugin:...línea hasta el final, es por esto: "Este paso requiere que el complemento de aplicación: línea 'com.google.gms.google-services' esté en la parte inferior de su archivo app / build.gradle para que no se introduzcan colisiones de dependencias. Puede ver el resultado de este paso ejecutando ./gradlew: app: dependencies ".
Tony Chan
15

Haz lo siguiente:

  1. Ponga lo siguiente en su build.gradle (archivo gradle de nivel de aplicación)

    dependencies {
          classpath 'com.android.tools.build:gradle:2.0.0-beta2'
          classpath 'com.google.gms:google-services:2.0.0-beta2'
    }

Consulte aquí para obtener la última versión, ya que esto sigue cambiando.

  1. Si recibe el siguiente mensaje de error, entonces necesita actualizar su envoltura de gradle a la última en gradle-wrapper.properties. Estoy usando 2.10.

El complemento es demasiado antiguo, actualice a una versión más reciente o configure la variable de entorno ANDROID_DAILY_OVERRIDE

  1. Coloque la siguiente línea en la parte inferior de su build.gradle (archivo gradle de nivel de módulo)

    apply plugin: 'com.google.gms.google-services
mthakuri
fuente
1
Agregar la línea de complemento de aplicación en la PARTE INFERIOR de mi build.gradle lo arregló para mí. ¡Gracias!
Panda4Man
Me alegra que hayas especificado que consultes el enlace de la última versión. Ninguna de las versiones con sufijo beta funcionaba para mí y no tenía idea de dónde la gente obtenía todas estas versiones. 2.12 finalmente funcionó para mí.
Ryan H.
7

Esto parece solucionarse con la versión 3.0.0 del complemento de servicios de Google (y la versión 9.0.0 de la biblioteca de servicios de Google Play). Entonces con esto

nivel superior build.gradle

dependencies {
    classpath 'com.google.gms:google-services:3.0.0'
}

nivel de aplicación build.gradle

apply plugin: 'com.google.gms.google-services'

dependencies {
    compile 'com.google.android.gms:play-services:9.0.0
}

Nota al margen rápida: si está actualizando a la versión 3.0.0 del google-servicescomplemento, asegúrese de regenerar su archivo de configuración ya que tiene nuevos campos (explicados aquí ).

Editar (2016-06-20): si bien esto se compila y se ejecuta, acabo de notar que en los registros de compilación se especifica colocar el complemento en la parte inferior del archivo, o se usará el predeterminado (9.0.0). Entonces, en la situación anterior, esto no es un problema ya que estoy usando la versión 9.0.0, pero esto puede ser problemático al actualizar la dependencia. Aquí está el registro:

google-services plugin could not detect any version for com.google.android.gms or com.google.firebase, default version: 9.0.0 will be used. please apply google-services plugin at the bottom of the build file.

jguerinet
fuente
5

Para mí solo funciona esto:

Nivel superior.

dependencies {
    classpath 'com.android.tools.build:gradle:2.1.0'
    classpath 'com.google.gms:google-services:3.0.0'
}

Nivel de aplicación:

dependencies {
    compile 'com.google.android.gms:play-services-gcm:9.0.1'
    compile 'com.google.android.gms:play-services-location:9.0.1'
}

// should be at the bottom
apply plugin: 'com.google.gms.google-services'
Denshov
fuente
1
ir apply plugin: 'com.google.gms.google-services'al fondo hizo el trabajo en mi proyecto
Napoleón
debe estar en el fondo es el factor clave aquí
Dr. anDRO
4

encontrado en el ejemplo oficial

en proyecto gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.0.0-alpha9'
        classpath 'com.google.gms:google-services:2.0.0-alpha9'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

en la aplicación gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "com.google.samples.quickstart.signin"
        minSdkVersion 18
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"

        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    packagingOptions {
        exclude 'LICENSE.txt'
    }

    // Resolve dependency differences between app and tests
    configurations.all {
        resolutionStrategy.force 'com.android.support:support-annotations:23.1.1'
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'

    // Dependency for Google Sign-In
    compile 'com.google.android.gms:play-services-auth:8.4.0'

    // UiAutomatorTesting
    androidTestCompile 'com.android.support.test:runner:0.4.1'
    androidTestCompile 'com.android.support.test:rules:0.4.1'
    androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2'
    androidTestCompile 'com.android.support:support-annotations:23.1.1'
}

apply plugin: 'com.google.gms.google-services'
Peter Kao
fuente
1
Usar alpha9funcionó para mí con Gradle 2.11. ¡Gracias por esto! ¿Puede vincular al ejemplo oficial? Quizás también sea útil para otros problemas como este.
Cilenco
1
Ejemplo oficial
Peter Kao
2

He actualizado en la aplicación build.gradle

dependencies {
....
compile 'com.google.android.gms:play-services-auth:9.0.0'

y la aplicación build.gradle

  dependencies {
    classpath 'com.android.tools.build:gradle:2.1.0'
    classpath 'com.google.gms:google-services:3.0.0'
}

Está funcionando para.

Raja Peela
fuente
2

En mi caso, he eliminado el "complemento de aplicación: 'com.google.gms.google-services'" del final de gradle.build y está funcionando bien.

Chirag Thummar
fuente
1

Estaba buscando ... en la página de Google está la solución ... https://developers.google.com/android/guides/google-services-plugin#introduction

Agregue dependencias para bibliotecas básicas necesarias para los servicios que ha habilitado. Este paso requiere que el complemento de aplicación: la línea 'com.google.gms.google-services' esté al final de su archivo app / build.gradle para que no se introduzcan colisiones de dependencia. Puede ver el resultado de este paso ejecutando ./gradlew: app: dependencies.

Wilkens Figueiredo
fuente
1

No tiene sentido mover el complemento de aplicación: 'com.google.gms.google-services'al final de build.gradle . Es lo mismo que no definirlo.

Simplemente elimine esta línea y asegúrese de aplicar el complemento: ' com.android.application' está ahí

Utilizar:

compile 'com.google.android.gms:play-services-gcm:8.4.0'
compile 'com.google.android.gms:play-services:8.4.0'

Se compilará.

Goku
fuente
La aplicación del complemento tiene / podría tener un efecto sobre qué versión se utiliza. Ver esta respuesta de rguerinet
Ryan H.
0

En proyecto gradle

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.google.gms:google-services:2.0.0-alpha6'
    }
}

en la aplicación / módulo gradle

apply plugin: 'com.google.gms.google-services'
android {
    ...
}

dependencies {
    compile 'com.google.android.gms:play-services-analytics:8.3.0'
}
Ahmad Aghazadeh
fuente
-1

En proyecto gradle:

       compileSdkVersion 23

Está funcionando.

nocmmnt
fuente
-3

Aquí están mis instrucciones para arreglarlo.

  1. Cambiar para usar compile 'com.google.android.gms:play-services-location:8.3.0'en la aplicaciónbuild.gradle
  2. Ir apply plugin: 'com.google.gms.google-services'al final de la aplicaciónbuild.gradle
  3. Uso classpath 'com.google.gms:google-services:2.0.0-alpha3'en build.gradledependencia del proyecto
  4. Cambiar para usar gradle-2.8engradle/wrapper/gradle-wrapper.properties
hawa11
fuente