2016-09-15 55 views
3

在我的應用我有這些依賴關係:錯誤的build.gradle與com.google.android.gms:播放服務,地圖:9.4.0

apply plugin: 'com.android.application' 
android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.2" 

    defaultConfig { 
     applicationId "com.package_app.name" 
     minSdkVersion 15 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 
dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.2.1' 
    compile 'com.android.volley:volley:1.0.0' 
    compile 'com.google.firebase:firebase-core:9.2.0' 
    compile 'com.google.firebase:firebase-messaging:9.2.0' 
    compile 'de.hdodenhof:circleimageview:2.1.0' 
    compile 'com.android.support:design:23.2.1' 
    compile "com.android.support:recyclerview-v7:23.2.1" 
    compile 'com.android.support:cardview-v7:23.2.1' 
    compile 'com.google.android.gms:play-services-maps:9.4.0' 
} 

下面這些dependencise我把

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

但我無法構建應用程序,因爲返回此錯誤。

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.2.0. 

所以我試圖把

compile 'com.google.android.gms:play-services-maps:9.2.0' 

和App的身材,所以我的問題是: 爲什麼我不能使用的服務,地圖最後versione?

回答

2

我昨天遇到了同樣的問題,並通過執行解決它如下:

首先,確保你的項目/頂層gradle這個文件對谷歌服務的最新版本中相依

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

。其次,確保把插件在gradle這個app文件

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

的底部,並確保所有的谷歌服務的依賴,包括火力點是相同的版本,即9.4.0

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

compile 'com.google.firebase:firebase-core:9.4.0' 
compile 'com.google.firebase:firebase-auth:9.4.0' 

的這是我目前在我的app.gradle依賴關係。

+0

ThankYou!我的問題是沒有注意到Firebase的版本。 – LorenzoBerti

+0

很高興我能夠幫助 –

3

添加此行結束的build.gradle

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

並添加了這個類路徑(其他build.gradle

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

有。 下面的依賴關係{...} – LorenzoBerti

+0

感謝Michele,但build.gradle中也有類路徑,但問題仍然存在。我編輯我的問題也與其他buld.gradle – LorenzoBerti

+1

你必須更新所有庫到'9.4.0' ...但它似乎很明顯@LorenzoBerti –

-1

更改此:

compile 'com.google.firebase:firebase-core:9.2.0' 
compile 'com.google.firebase:firebase-messaging:9.2.0' 

通過

compile 'com.google.firebase:firebase-core:9.4.0' 
compile 'com.google.firebase:firebase-messaging:9.4.0' 
+0

Downvoted當然,在家裏嘗試了這個,這解決了這個問題。 –

+0

更好的複製/粘貼其他的迴應後,我覺得猜投彈得好 –

0

請確保在根目錄build.gradle中有最新的插件參考。

此外,如果您最近更新的播放服務和所有引用都不錯 - 試圖通過調用rm -rf ~/.gradle/cache清潔gradle這個緩存,有時它有助於

buildscript { 
    repositories { 
     jcenter() 
    } 

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

這是因爲你使用

compile 'com.google.firebase:firebase-core:9.2.0' 
compile 'com.google.firebase:firebase-messaging:9.2.0' 

正如你可以在這些依賴關係的POM文件中找到:

<artifactId>firebase-analytics</artifactId> 
    <version>9.4.0</version> 
    <packaging>aar</packaging> 
    <dependencies> 
    <dependency> 
     <groupId>com.google.android.gms</groupId> 
     <artifactId>play-services-basement</artifactId> 
     <version>9.2.0</version> 
     <scope>compile</scope> 
     <type>aar</type> 
    </dependency> 

他們正在使用的com.google.android.gms庫與9.2.0。

使用

compile 'com.google.firebase:firebase-core:9.4.0' 
compile 'com.google.firebase:firebase-messaging:9.4.0' 
相關問題