2016-08-08 84 views
50

Ich erhalte eine Fehlermeldung, dassVersionskonflikt Aktualisierung Play-Diensten 9.4.0 Android Studio 2.2

Error:Execution failed for task ':app:processDebugGoogleServices'. 
    > Please fix the version conflict either by updating the version of the google-services plugin (information about the latest version is available at https://bintray.com/android/android-tools/com.google.gms.google-services/) or updating the version of com.google.android.gms to 9.0.0. 

Ich habe versucht, bei https://bintray.com/android/android-tools/com.google.gms.google-services/ und com.google.gms suchen: google-Dienstleistungen: 3.0.0 scheint zu sein, das Neueste. Das ist mein Projekt gradle

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

Und das ist, wie meine app gradle wie

buildscript { 
     repositories { 
      maven { url 'https://maven.fabric.io/public' } 
     } 

     dependencies { 
      classpath 'io.fabric.tools:gradle:1.+' 
     } 
    } 
    apply plugin: 'com.android.application' 
    apply plugin: 'io.fabric' 
    apply plugin: 'com.google.gms.google-services' 

    repositories { 
     maven { url 'https://maven.fabric.io/public' } 
    } 


    android { 
     compileSdkVersion 24 
     buildToolsVersion "24.0.1" 
     useLibrary 'org.apache.http.legacy' 

     defaultConfig { 
      applicationId "com.myapp.preburn" 
      minSdkVersion 10 
      targetSdkVersion 24 
      versionCode 14 
      versionName "2.0.1" 
      renderscriptTargetApi 22 
      renderscriptSupportModeEnabled true 
     } 
     buildTypes { 
      release { 
       lintOptions { 
        disable 'MissingTranslation' 
       } 
       minifyEnabled false 
       proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
      } 
     } 
    } 

    android { 
     packagingOptions { 
      exclude 'META-INF/DEPENDENCIES' 
      exclude 'META-INF/NOTICE' 
      exclude 'META-INF/LICENSE' 
     } 
    } 

    repositories { 
     mavenCentral() 
     jcenter() 
    } 

    dependencies { 
     compile fileTree(dir: 'libs', include: ['*.jar']) 
     compile fileTree(dir: 'libs', include: 'Parse-*.jar') 
     compile 'com.parse.bolts:bolts-android:1.2.0' 
     compile 'com.android.support:appcompat-v7:24.1.1' 
     compile 'com.mcxiaoke.volley:library:1.0.9' 
     compile 'com.google.android.gms:play-services-gcm:9.4.0' 
     compile 'com.google.android.gms:play-services-location:9.4.0' 
     compile 'com.google.android.gms:play-services-maps:9.4.0' 
     compile 'com.google.android.gms:play-services-ads:9.4.0' 
     compile 'com.google.android.gms:play-services-plus:9.4.0' 
     compile 'com.google.android.gms:play-services-analytics:9.4.0' 
     compile 'me.leolin:ShortcutBadger:[email protected]' 
     compile 'com.squareup.picasso:picasso:2.5.2' 
     compile files('libs/jsoup-1.7.3.jar') 
     compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
      transitive = true; 
     } 
     compile files('libs/InMobi-5.2.2.jar') 
     compile files('libs/libadapterinmobi.jar') 
     compile files('libs/StartAppAdMobMediation-1.0.1.jar') 
     compile files('libs/StartAppInApp-3.3.1.jar') 
     compile 'org.adw.library:discrete-seekbar:1.0.1' 
     compile 'com.pnikosis:materialish-progress:1.0' 
    } 

sieht Wenn ich die Play-Dienste ändern 9.0.0 alles kompiliert in Ordnung. Was fehlt mir hier?

Antwort

147

Sie müssen die apply plugin: 'com.google.gms.google-services' Zeile unter Ihrem dependencies Block setzen - damit kann das Plugin bestimmen, welche Version von Play-Diensten Sie verwenden.

+1

Danke. Das hat funktioniert! – tbag

+5

Ja, es funktioniert. Nur neugierig, ich setze Plugin auf den Block und scheint wie es nicht funktioniert. Warum muss es unter dem Block sein? –

+9

@LongDao - die Datei hat mehr gemeinsam mit einem Computerprogramm als eine Konfigurationsdatei - sie wird in der Reihenfolge gelesen und ausgeführt. Wenn Sie die Zeile "apply plugin" vor dem Block "dependencies" platzieren, führt das Plug-in Ihren Build aus und konfiguriert ihn, bevor Sie wissen, welche Version der Google Play-Dienste Sie tatsächlich verwenden. Sie kann also nicht vorauslesen – ianhanniballake

61

Wenn Sie Firebase Abhängigkeiten haben. Aktualisieren Sie ihre Version Version der Google-Dienste entsprechen: Beispiel:

//Firebase Crashreports 
compile 'com.google.firebase:firebase-crash:9.6.1' 
//Firebase Analytics 
compile 'com.google.firebase:firebase-core:9.6.1' 
compile 'com.google.android.gms:play-services-analytics:9.6.1' 
compile 'com.google.android.gms:play-services-gcm:9.6.1' 

Alle müssen gleiche haben 9.6.1 Version

+0

das funktionierte für mich, obwohl in der docs google play services 9.8.0 verwenden, müssen Sie Version mit Firebase Abhängigkeiten übereinstimmen. – aldok

+1

Dank Ihrer Antwort. bemerkte, dass die Version aller Play-Dienste und Firebase-Absturz übereinstimmen sollte (9.4.0 in meinem Fall) – onexf

+0

Danke für Ihre Antwort. es hat für mich funktioniert. –

1

Haben Sie die Linie haben

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

Linie am Ende von Ihnen build.gradle Datei?

Dieser Fehler kam meistens, wenn "Plug-in anwenden" an die Spitze gesetzt.

1

Ich laufe auf das gleiche Problem.

war meine Lösung nicht alles, um den Code hinzuzufügen, aber herunterladen Google Support Repository - Sie können es in Werkzeuge finden -> Android -> SDK Manager -> SDK Tools

3

gerade dies nach Abhängigkeiten schreiben

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

Wenden Sie einfach die Google-Dienste unter die Abhängigkeiten. arbeitete für mich.

+0

Danke auch Arbeit von mir. – Jaydeep

-1

Gehen Sie einfach

finden /platforms/android/cordova-plugin-fcm/*-FCMPlugin.gradle für

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

es

mit ersetzen wieder
classpath 'com.google.gms:google-services:3.0.0' 

bauen.

0

Ich habe Google Repository installiert:

Android> SDK Manager. Aktualisieren Sie den Android Studio SDK-Manager: Klicken Sie auf SDK-Tools, erweitern Sie das Support-Repository, wählen Sie Google Repository aus, und klicken Sie dann auf OK.

0

Ich war mit einem ähnlichen Problem konfrontiert. Oben, wenn das Plugin hinzugefügt wird, hat es nicht für mich funktioniert.so Fügen Sie das Plugin am unteren Rand der Gradle. das ist mein Problem der Konflikt Version

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

zu lösen, und fügen Sie diese Zeilen

compile 'com.google.firebase:firebase-core:9.2.0' 
compile 'com.google.firebase:firebase-messaging:9.2.0' 
compile 'com.google.android.gms:play-services-location:9.2.0' 
compile 'com.google.android.gms:play-services-places:9.2.0' 
-1

Abhängigkeits Das ist Problem ist eigentlich meine viel Zeit in Anspruch nehmen, aber ich löste es durch die Anwendung des Plugin com.google.gms.google-services.

Wichtig: Stellen Sie sicher, es nicht am Anfang der Gradle-Datei zu verwenden, und verwenden Sie es nach dem Block der Abhängigkeiten.