Conflitto di versione aggiornato alla 8.4.0


197

Errore :

Esecuzione non riuscita per l'attività ": app: processDebugGoogleServices". Correggi il conflitto di versione aggiornando la versione del plug-in Google Services (le informazioni sull'ultima versione sono disponibili qui ) o aggiornando la versione di com.google.android.gms alla versione 8.3.0.

Ho fatto tutte le cose che ho trovato.

  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
        }

E nel livello dell'app

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

Risposte:


336

Utilizzare queste dipendenze per il progetto build.gradle

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

e inseriscilo alla fine del file build.gradle a livello di app (dopo le dipendenze).

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

Non ho idea del perché mettere questo alla fine (e non all'inizio) risolva l'errore.

MODIFICA 5/1/2016

Ok ... Quindi, cercando di porre fine a tutti i problemi che voi ragazzi avete affrontato con la mia soluzione

Questa è la mia valutazione finale a livello di app

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'

e questo è il livello finale del mio progetto

// 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()
    }
}

Confronta questo con i tuoi file gradle e aggiungi o modifica qualsiasi valore diverso da quello che ho scritto.


4
compile 'com.google.android.gms:play-services-auth:8.4.0sarà anche richiesto.
Shajeel Afzal,

2
Mi chiedo sempre come le persone si imbattono in soluzioni come questa. Prova ed errore? Pergamene sacre?
A. Steenbergen,

77
Perché mettere questo apply plugin: 'com.google.gms.google-services'alla fine del file build.gradle funziona e metterlo all'inizio non riesce?
toobsco42,

8
Nessuna delle soluzioni precedenti funziona per me per 8.4.0. Tutto fallisce dopo il 2 ° "Progetto di ricostruzione" che eseguo dopo aver salvato build.gradle. La prima build funziona (o non fallisce rumorosamente), la seconda fornisce un errore di circa 8.3.0 contro 8.4.0. L'uso di "com.google.android.gms: play-services" anziché di singoli non è riuscito. L'uso di (`classpath 'com.google.gms: google-services: 2.0.0-alpha3'`) non è riuscito con altri errori (sulla seconda build), quindi uso 1.5.0. L'uso dell'anteprima non di Studio non ha fatto la differenza.
Arberg,

5
IMPORTANTE Non dimenticare di aggiungere il tuo file google-services.json! altrimenti fallirà con il messaggio "File google-services.json mancante dalla cartella principale del modulo". Puoi creare il file qui: developers.google.com/analytics/devguides/collection/android/v4 E come dicono i documenti, successivamente aggiungerai questo file a projectFolder / app (quindi la radice del tuo modulo app).
Martin Pfeffer,

63

Nel modulo dell'applicazione (build.gradle)

In movimento :

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

all'ultima riga ha risolto il problema.


3
per chiunque si chieda perché lo spostamento della apply plugin:...linea alla fine funzioni, è per questo: "Questo passaggio richiede che il plug-in di applicazione: la riga 'com.google.gms.google-services' sia nella parte inferiore del file app / build.gradle in modo che non vengano introdotte collisioni di dipendenze. Puoi vedere il risultato di questo passaggio eseguendo ./gradlew: app: dipendenze. "
Tony Chan,

15

Eseguire le seguenti operazioni:

  1. Inserisci quanto segue nel tuo build.gradle (file gradle a livello di applicazione)

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

Controlla qui per l'ultima versione in quanto continua a cambiare.

  1. Se viene visualizzato il messaggio di errore riportato di seguito, è necessario aggiornare il wrapper gradle all'ultimo in gradle-wrapper.properties. Sto usando 2.10.

Il plug-in è troppo vecchio, aggiorna a una versione più recente o imposta la variabile di ambiente ANDROID_DAILY_OVERRIDE

  1. Metti la seguente riga in fondo al tuo build.gradle (file gradle a livello di modulo)

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

1
L'aggiunta della riga di applicazione del plug-in nella parte inferiore del mio build.gradle l'ha risolta per me. Grazie!
Panda4Man,

Sono contento di aver specificato di controllare il collegamento per l'ultima versione. Nessuna delle versioni beta con suffisso funzionava per me e non avevo idea da dove la gente prendesse tutte queste versioni. 2.12 finalmente ha funzionato per me.
Ryan H.

7

Questo sembra essere stato risolto con la versione 3.0.0 del plug-in Google Services (e la versione 9.0.0 della libreria Google Play Services). Quindi con questo

build.gradle di livello superiore

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

build.gradle a livello di app

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

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

Nota rapida: se si sta eseguendo l'aggiornamento alla versione 3.0.0 del google-servicesplug-in, assicurarsi di rigenerare il file di configurazione in quanto ha nuovi campi (spiegato qui ).

Modifica (20/06/2016): Mentre questo viene compilato ed eseguito, ho appena notato che nei registri di build specifica di mettere il plugin nella parte inferiore del file o verrà utilizzato il valore predefinito (9.0.0). Quindi nella situazione sopra non è un problema poiché sto usando la versione 9.0.0, ma questo può essere problematico quando aggiorno la dipendenza. Ecco il 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.


5

Per me funziona solo questo:

Livello superiore.

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

Livello app:

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'

1
trasferirsi apply plugin: 'com.google.gms.google-services'in fondo ha fatto il lavoro nel mio progetto
Napoleone,

dovrebbe essere in fondo il fattore chiave qui
Dr. aNdRO

4

trovato nell'esempio ufficiale

nel grado di progetto

// 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()
    }
}

nel livello dell'app

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'

1
Usare ha alpha9funzionato per me Gradle 2.11. Grazie per questo! Potete per favore collegarvi all'esempio ufficiale, forse è utile anche per altri problemi come questo.
Cilenco,


2

Ho aggiornato nell'app build.gradle

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

e app build.gradle

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

Funziona per.


2

Nel mio caso ho rimosso il "applica plug-in: 'com.google.gms.google-services'" dalla fine di gradle.build e il suo corretto funzionamento.



1

Stavo cercando ... sulla pagina di Google c'è la soluzione ... https://developers.google.com/android/guides/google-services-plugin#introduction

Aggiungi dipendenze per le librerie di base richieste per i servizi che hai abilitato. Questo passaggio richiede che il plug-in di applicazione: la riga "com.google.gms.google-services" sia alla fine del file app / build.gradle in modo che non vengano introdotte collisioni di dipendenze. Puoi vedere il risultato di questo passaggio eseguendo ./gradlew: app: dipendenze.


1

Non ha senso spostare il plugin apply: 'com.google.gms.google-services'alla fine di build.gradle . È come non definirlo.

Rimuovi questa riga e assicurati di applicare il plug-in: "com.android.application ' è lì

Uso:

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

si compilerà.


L'applicazione del plug-in ha / potrebbe avere un effetto sulla versione utilizzata. Vedi questa risposta di rguerinet
Ryan H.

0

A livello di progetto

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

in gradi app / modulo

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

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

-1

Nel grado di progetto:

       compileSdkVersion 23

Funziona.


-3

Ecco le mie istruzioni per risolverlo.

  1. Cambia da usare compile 'com.google.android.gms:play-services-location:8.3.0' in appbuild.gradle
  2. Passa apply plugin: 'com.google.gms.google-services'alla fine dell'appbuild.gradle
  3. Utilizzare classpath 'com.google.gms:google-services:2.0.0-alpha3'nel progettobuild.gradle dipendenza del
  4. Cambia da usare gradle-2.8ingradle/wrapper/gradle-wrapper.properties
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.