Aktualisierung des Versionskonflikts auf 8.4.0

197

Fehler :

Ausführung für Aufgabe ': app: processDebugGoogleServices' fehlgeschlagen. Bitte beheben Sie den Versionskonflikt, indem Sie entweder die Version des Google Services-Plugins aktualisieren (Informationen zur neuesten Version finden Sie hier ) oder die Version von com.google.android.gms auf 8.3.0 aktualisieren.

Ich habe alles getan, was ich gefunden habe.

  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
        }

Und in der App gradle

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

Antworten:

336

Verwenden Sie diese Abhängigkeiten für das Projekt build.gradle

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

und setzen Sie dies am Ende der build.gradle-Datei auf App-Ebene (nach den Abhängigkeiten).

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

Ich habe keine Ahnung, warum das Setzen des Endes am Ende (und nicht am Anfang) den Fehler löst.

BEARBEITEN 01.05.2016

Ok ... Also versuche alle Probleme zu beenden, mit denen ihr mit meiner Lösung konfrontiert seid

Dies ist mein letzter Gradle auf App-Ebene

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'

und dies ist mein letztes Projektlevel

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

Vergleichen Sie dies mit Ihren eigenen Gradle-Dateien und fügen Sie Werte hinzu oder ändern Sie sie, die sich von den von mir geschriebenen unterscheiden.

Sarasgupta
quelle
4
compile 'com.google.android.gms:play-services-auth:8.4.0wird auch benötigt.
Shajeel Afzal
2
Ich frage mich immer, wie die Leute über solche Lösungen stolpern. Versuch und Irrtum? Heilige Schriftrollen?
A. Steenbergen
77
Warum apply plugin: 'com.google.gms.google-services'funktioniert es nicht , das am Ende der build.gradle-Datei zu platzieren und am Anfang zu setzen?
toobsco42
8
Keine der oben genannten Lösungen funktioniert für mich für 8.4.0. Alle schlagen nach dem 2. 'Projekt neu erstellen' fehl, das ich nach dem Speichern von build.gradle ausführe. Der erste Build funktioniert (oder schlägt nicht laut fehl), der zweite gibt einen Fehler über 8.3.0 gegenüber 8.4.0 aus. Die Verwendung von 'com.google.android.gms: play-services' anstelle von Einzelpersonen ist fehlgeschlagen. Die Verwendung von (`classpath 'com.google.gms: google-services: 2.0.0-alpha3'`) ist mit einem anderen Fehler (beim 2. Build) fehlgeschlagen, daher verwende ich 1.5.0. Die Verwendung von Nicht-Studio-Vorschau machte keinen Unterschied.
Arberg
5
WICHTIG Vergessen Sie nicht, Ihre Datei google-services.json hinzuzufügen! Andernfalls schlägt die Meldung "Datei google-services.json fehlt im Stammverzeichnis des Moduls" fehl. Sie können die Datei hier erstellen: developer.google.com/analytics/devguides/collection/android/v4 Und wie in den Dokumenten angegeben, fügen Sie diese Datei als Nächstes zu projectFolder / app hinzu (also dem Stammverzeichnis Ihres App-Moduls).
Martin Pfeffer
63

Im Modul der Anwendung (build.gradle)

Ziehen um :

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

bis zur letzten Zeile löste das Problem.

Ritter
quelle
3
Für alle, die sich fragen, warum das Verschieben der apply plugin:...Zeile an das Ende funktioniert, ist dies der Grund: "Für diesen Schritt muss
Tony Chan
15

Mach Folgendes:

  1. Fügen Sie Folgendes in Ihre build.gradle (Gradle-Datei auf Anwendungsebene) ein.

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

Bitte überprüfen Sie hier die neueste Version, da sich diese ständig ändert.

  1. Wenn die folgende Fehlermeldung angezeigt wird, müssen Sie Ihren Gradle-Wrapper auf den neuesten Stand in gradle-wrapper.properties aktualisieren. Ich benutze 2.10.

Das Plugin ist zu alt. Bitte aktualisieren Sie es auf eine neuere Version oder setzen Sie die Umgebungsvariable ANDROID_DAILY_OVERRIDE

  1. Fügen Sie die folgende Zeile am Ende Ihrer build.gradle (Gradle-Datei auf Modulebene) ein.

    apply plugin: 'com.google.gms.google-services
mthakuri
quelle
1
Das Hinzufügen der Apply-Plugin-Zeile unten in meinem build.gradle hat dies für mich behoben. Vielen Dank!
Panda4Man
Ich bin froh, dass Sie angegeben haben, den Link auf die neueste Version zu überprüfen. Keine der Beta-Versionen mit Suffix funktionierte für mich und ich hatte keine Ahnung, woher die Leute all diese Versionen bezogen. 2.12 hat endlich für mich funktioniert.
Ryan H.
7

Dies scheint mit Version 3.0.0 des Google Services-Plugins (und Version 9.0.0 der Google Play Services-Bibliothek) behoben zu sein. Also damit

oberste Ebene build.gradle

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

App-Ebene build.gradle

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

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

Kurzer Hinweis: Wenn Sie auf Version 3.0.0 des google-servicesPlugins aktualisieren, müssen Sie Ihre Konfigurationsdatei neu generieren, da sie neue Felder enthält ( hier erklärt ).

Bearbeiten (20.06.2016): Während dies kompiliert und ausgeführt wird, habe ich gerade bemerkt, dass in den Build-Protokollen angegeben ist, dass das Plugin am Ende der Datei platziert werden soll, oder dass die Standardeinstellung (9.0.0) verwendet wird. In der obigen Situation ist dies kein Problem, da ich Version 9.0.0 verwende. Dies kann jedoch beim Aktualisieren der Abhängigkeit problematisch sein. Hier ist das Protokoll:

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
quelle
5

Bei mir funktioniert nur das:

Höchststufe.

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

App-Level:

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
quelle
1
Nach apply plugin: 'com.google.gms.google-services'unten zu gehen hat die Arbeit in meinem Projekt erledigt
Napoleon
sollte unten sein ist der Schlüsselfaktor hier
Dr. aNdRO
4

im offiziellen Beispiel gefunden

im Projekt 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()
    }
}

in app 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
quelle
1
Zu verwenden alpha9hat bei mir mit funktioniert Gradle 2.11. Danke dafür! Können Sie bitte auf das offizielle Beispiel verlinken, vielleicht ist es auch hilfreich für andere Probleme wie dieses.
Cilenco
1
Offizielles Beispiel
Peter Kao
2

Ich habe in App build.gradle aktualisiert

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

und App build.gradle

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

Es funktioniert für.

Raja Peela
quelle
2

In meinem Fall habe ich das "Plugin anwenden: 'com.google.gms.google-services'" vom Ende von gradle.build entfernt und es funktioniert einwandfrei.

Chirag Thummar
quelle
1

Ich habe gesucht ... auf der Google-Seite gibt es die Lösung ... https://developers.google.com/android/guides/google-services-plugin#introduction

Fügen Sie Abhängigkeiten für Basisbibliotheken hinzu, die für die von Ihnen aktivierten Dienste erforderlich sind. Für diesen Schritt muss sich die Zeile zum Anwenden des Plugins "com.google.gms.google-services" am Ende Ihrer Datei "app / build.gradle" befinden, damit keine Abhängigkeitskollisionen eingeführt werden. Sie können das Ergebnis dieses Schritts anzeigen, indem Sie ./gradlew: app: dependencies ausführen.

Wilkens Figueiredo
quelle
1

Das Verschieben des Plugins 'com.google.gms.google-serviceszum Anwenden hat keine Bedeutung: 'bis zum Ende von build.gradle . Es ist dasselbe, als würde man es nicht definieren.

Entfernen Sie einfach diese Zeile und stellen Sie sicher, dass das Plugin angewendet wird: ' com.android.application' ist da

Verwenden:

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

es wird kompiliert.

Goku
quelle
Das Anwenden des Plugins hat / könnte Auswirkungen darauf haben, welche Version verwendet wird. Siehe diese Antwort von rguerinet
Ryan H.
0

Im Projekt gradle

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

in App / Modul Gradle

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

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

Im Projekt gradle:

       compileSdkVersion 23

Es funktioniert.

nocmmnt
quelle
-3

Hier ist meine Anweisung, um das Problem zu beheben.

  1. Zur Verwendung compile 'com.google.android.gms:play-services-location:8.3.0'in der App ändernbuild.gradle
  2. Gehen Sie apply plugin: 'com.google.gms.google-services'zum Ende der Appbuild.gradle
  3. Verwenden Sie classpath 'com.google.gms:google-services:2.0.0-alpha3'in der build.gradleProjektabhängigkeit
  4. Zur Verwendung gradle-2.8in änderngradle/wrapper/gradle-wrapper.properties
hawa11
quelle