错误:修复版本冲突(Google服务插件)


69

根据SO线程,我知道存在版本冲突,但是在从Google获得新版本后问题仍然存在。

错误:任务':app:processDebugGoogleServices'的执行失败。请通过更新google-services插件的版本来解决版本冲突(有关最新版本的信息,访问https://bintray.com/android/android-tools/com.google.gms.google-services/)。或将com.google.android.gms的版本更新为10.0.1。

我的build.gradle(模块:应用)

....
dependencies {
   compile fileTree(dir: 'libs', include: ['*.jar'])
   androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
    exclude group: 'com.android.support', module: 'support-annotations'
    })
   compile 'com.android.support:appcompat-v7:26.+'
   compile 'com.android.support.constraint:constraint-layout:1.0.2'
   testCompile 'junit:junit:4.12'
   compile 'com.google.firebase:firebase-messaging:10.0.1'
   compile 'com.google.android.gms:play-services-maps:11.0.4'
   compile 'com.google.android.gms:play-services-location:11.0.4'
}

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


现在需要进行哪些更改?


确保所有播放服务的版本相同。
sushma1008

Answers:


57

我想你改变了

compile 'com.google.firebase:firebase-messaging:11.0.4'

1
所以,这才是问题!我希望在发布之前尝试过它:\
Faizan Mubasher

4
确保所有Firebase SDK版本与播放服务版本相同。
无限循环

1
我遇到了同样的问题,但是我所有的版本号都已更新。几分钟后,我发现它给出了错误,因为我在底部放了应用插件:“ com.google.gms.google-services”。一旦我将其放在底部,它就会起作用。有人可以解释一下为什么会这样吗?
Farwa

如何在phonegap构建上执行此解决方案
sqlchild

如何在Ionic / Cordova版本中解决此问题?
群星

40

当以下情况时抛出相同的错误

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

没有添加到模块build.gradle文件的底部。


3
这对我
有用

2
救了我!人们不得不怀疑,为什么Gradle闻起来像黑魔法一样多。
Guy Moreillon

我很伤心,为什么在Gradle顶部设置插件行会出错,而在文件底部设置它会正常工作?是否有任何已知的实际原因。
艾哈迈德·哈姆迪(Ahmed Hamdy)'19

30

您必须对所有3个库仅使用一个版本

compile 'com.google.firebase:firebase-messaging:11.0.4'
compile 'com.google.android.gms:play-services-maps:11.0.4'
compile 'com.google.android.gms:play-services-location:11.0.4'

或仅将10.0.1用于3个库


惊人。花了几个小时试图找出一个编译问题,因为bc firebase尝试使用17倍,而play-services-location是16倍。谢谢
布拉德·马丁

更新,可以使用单个版本stackoverflow.com/a/54593656/6891563
Khemraj

21

请更改您的项目级build.gradle文件,在其中您必须更改google-services或的依赖项类build.gradle路径。

buildscript {

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

20

Google Play服务要求其所有依赖项都具有相同的版本。但是,如果您查看依赖关系:

compile 'com.google.firebase:firebase-messaging:10.0.1'
compile 'com.google.android.gms:play-services-maps:11.0.4'
compile 'com.google.android.gms:play-services-location:11.0.4'

有一个具有不同的版本。

可以通过将版本更改为(在这种情况下)来解决11.0.4

这适用于Firebase和Google Play服务-两者必须具有相互匹配的匹配版本。如果Firebase依赖项是10.0.1Google Play服务依赖项11.0.4,则将发生相同的错误。

请注意,在某些情况下,可以有(如图书馆,有一个不同版本的库库x的用途play-services-games:10.0.1,而你使用11.0.4你的应用程序的依赖)


编辑

该答案不包括各个版本的较新版本。更新com.google.gms:google-services:4.1.0并检查mvnrepository(或其他一些Maven / Gradle工件搜索工具)以找到最新版本。


更新,最新的依赖项可能具有单独的版本。stackoverflow.com/a/54593656/6891563
Khemraj

6

com.android.tools.build:gradle:3.2.0

您必须使用:

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

这解决了我的问题


5

为了正确安装fire base,fire base编译的所有版本必须为同一版本,以便

compile 'com.google.firebase:firebase-messaging:11.0.4' 
compile 'com.google.android.gms:play-services-maps:11.0.4' 
compile 'com.google.android.gms:play-services-location:11.0.4'

这是正确的方法。


2

最初,firebase数据库指向11.8.0。将所有相关的jar更改为11.0.4之后,此问题在更改SDK级别时得以解决。

compile 'com.google.firebase:firebase-database:11.0.4'
compile 'com.google.firebase:firebase-messaging:11.0.4'

1

重要更新

与过去不同,Firebase和Play-service依赖项都具有独立的版本。如果您有版本冲突,则可以更新 com.google.gms:google-services。并开始定义独立版本。

步骤(1):更新 com.google.gms:google-services

打开项目级别build.gradle如果可用,请更新com.google.gms:google-services至版本4.1.0 必须检查较新的版本。

buildscript {
    ...
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.0'
        classpath 'com.google.gms:google-services:4.1.0' //< update this 
    }
}

步骤(2):更新Firebase依赖关系的最新版本

Firebase依赖版本可以是单独的。

com.google.firebase:firebase-core:16.0.3    //Analytics, check latest too
com.google.firebase:firebase-database:16.0.2    //Realtime Database, check latest too

步骤(3):更新Play Services依赖关系的最新版本

Play服务版本也可以具有单独的版本。

com.google.android.gms:play-services-ads:17.1.2 //Ads, check latest too
com.google.android.gms:play-services-analytics:16.0.6   //Analytics, check latest too

还有问题吗? 您可以通过阅读此答案来检查哪个依赖项引起冲突。


1

Google Services和Firebase库更新最新版本

谷歌服务

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

火力基地

 implementation 'com.google.firebase:firebase-database:19.0.0'

0

消息显示,请转到: com.google.gms.google-services版本

并复制上一个版本的编号。我的小于3.3.1。然后在项目的build.gradle放置/更改依赖项节点中为:

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2' // as it was before             
    classpath 'com.google.gms:google-services:3.3.1' // <-- the version change                  
        }

然后我同步了项目,错误消失了


0

所有Google服务应为相同版本,请尝试匹配每个版本

正确的是:

  implementation 'com.google.firebase:firebase-auth:11.6.0'
  implementation 'com.google.firebase:firebase-database:11.6.0'

不正确的配置是:

 implementation 'com.google.firebase:firebase-auth:11.6.0'
 implementation 'com.google.firebase:firebase-database:11.8.0'

0
After All Working for 6 hours i got the solution...

Simple Just what ever the plugins you defined in the build.gradle file... for ex: google services plugins or firebase plugins or any third party plugins all the **version code** should be same..

Example: In my application i am using following plugins...

    // google services plugins
    implementation 'com.google.android.gms:play-services-analytics:10.0.1'
    implementation 'com.google.android.gms:play-services-gcm:10.0.1'
    implementation 'com.google.android.gms:play-services-base:11.6.1'
    implementation 'com.google.android.gms:play-services-auth-api-phone:11.6.0'

    //firebase plugin
    implementation 'com.google.firebase:firebase-ads:10.0.1'

    //Third Party plugin
    implementation 'com.google.android.gms:play-services-auth:16.0.0'

在上述插件版本代码(例如:10.0.1、16.0.0、11.6.1)中,我遇到的问题是解决版本冲突(google-services插件)问题

Below for all plugins i have given single version code(11.6.0) and the issue is resovled...

 // google services plugins
    implementation 'com.google.android.gms:play-services-analytics:11.6.0'
    implementation 'com.google.android.gms:play-services-gcm:11.6.0'
    implementation 'com.google.android.gms:play-services-base:11.6.0'
    implementation 'com.google.android.gms:play-services-auth-api-phone:11.6.0'

    //firebase plugin
    implementation 'com.google.firebase:firebase-ads:11.6.0'

    //Third Party plugin
    implementation 'com.google.android.gms:play-services-auth:11.6.0'


**Syn Gradle**...

Go to Build>>Rebuild Projcet...

Sure it will work....@Ambilpura

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.