Gradle同步失败- play-services-measurement-base

42
我在我的Android项目中遇到了问题,无法构建。这是我遇到的错误:

Failed to notify dependency resolution listener. The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[15.0.2,15.0.2], [15.0.4,15.0.4]], but resolves to 15.0.4. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

我尝试了许多不同的解决方案,但问题仍然存在。我在项目根目录的gradle文件中拥有正确的依赖和存储库。
dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.google.gms:google-services:4.0.1'
}

repositories {
    jcenter()
    mavenLocal()
    mavenCentral()
    maven {
        url "https://maven.google.com"
    }
}

在我的应用 gradle 文件中,我有以下依赖项:

implementation "com.google.android.gms:play-services-maps:15.0.1"
implementation "com.google.android.gms:play-services-places:15.0.1"
implementation "com.google.android.gms:play-services-gcm:15.0.1"
implementation "com.google.android.gms:play-services-location:15.0.1"
implementation "com.google.android.gms:play-services-analytics:15.0.2"
implementation "com.google.android.gms:play-services-auth:15.0.1"
implementation "com.google.android.gms:play-services-tagmanager:15.0.2"
implementation "com.google.firebase:firebase-core:16.0.0"

有什么建议吗?

解决方案是更新以下依赖项:

implementation "com.google.android.gms:play-services-analytics:16.0.0"
implementation "com.google.android.gms:play-services-tagmanager:16.0.0"

更新到最新版本。 - Kopi Bryant
@KopiBryant 你是什么意思?一切都已经更新了。 - Giorgio Provenzale
请确保在Gradle设置中未选中离线工作。 - Amir Hossein
16个回答

45

我刚刚在我的build.gradle底部,在apply plugin: 'com.google.gms.google-services'之后添加了:

apply plugin: 'com.google.gms.google-services'
// Work around
com.google.gms.googleservices.GoogleServicesPlugin.config.disableVersionCheck = true

谢谢!不过这是一个安全的修复吗? - JeremyF
@JeremyF 这个解决方案自2018年6月以来已经在我的真实项目中成功使用,拥有数千名用户,但是“软件按原样提供,不附带任何保证... :)” - Dima Kozhevin
惊人!!谢谢 - Arash Hatami

20

我遇到了完全相同的错误,升级 analytics 是关键:

implementation 'com.google.android.gms:play-services-analytics:16.0.0'

我知道你可能认为所有东西都已经根据官方网站更新了,但是输入 15.0.0 并寻找建议会更好。


是的,非常感谢!在我的情况下,我还需要更新com.google.android.gms:play-services-tagmanager到16.0.0。 - Giorgio Provenzale
4
请注意,我不得不将版本从16.0.1 降级到 16.0.0 才能使其正常工作。 - Michał Tajchert
2
请在此处检查每个库的最新版本:https://dl.google.com/dl/android/maven2/index.html - elliptic1

6

如果你使用Firebase库,这段代码应该放在最上面:

implementation "com.google.firebase:firebase-core:16.0.0"

对于使用 Android Gradle 插件 >= 3.1 和 Google Services = 4.1.0 的人来说,这可能是你们遇到的问题~ - squirly

6

请尝试使项目失效、清理并重新构建。 - Gautam Dev
我尝试了它,但并没有解决问题。我已经更新了问题,并提供了解决方案。 - Giorgio Provenzale

4

这对我很有用。如果您使用Firebase库,应该把它放在顶部:

implementation "com.google.firebase:firebase-core:15.0.0"


3
请参考Bhupendra Acharya在https://groups.google.com/forum/#!topic/firebase-talk/XbGR-YrsTTA中提供的答案。我遇到了以下错误: "The library com.google.android.gms:play-services-basement is being requested by various other libraries at [[15.0.1,15.0.1]], but resolves to 16.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies."
请禁用插件并使用./gradlew:app:dependencies检查您的依赖关系树。
implementation 'com.google.firebase:firebase-core:16.0.1'

通过更新版本解决问题。
implementation 'com.google.firebase:firebase-core:16.0.4'

我遇到了类似的问题。我想知道在哪个文件中需要添加这些行。 - Sopan Kurkute

3
在我的情况下,问题出在OneSignal上,它不知怎么搞得一切都崩溃了。
他们甚至为此专门提供了一个库:https://github.com/OneSignal/OneSignal-Gradle-Plugin,实际问题是OneSignal在我的应用级gradle中,而不是根级别的gradle中。
真是太可笑了!

1
从他们的Android SDK安装文档中看来,他们希望它在app/build.gradle中。https://documentation.onesignal.com/docs/android-sdk-setup - Jim Factor
@JimFactor 是的,但不知怎么回事,我花了半天时间来解决这个问题;最终找到了这个解决方案,从那以后一切都看起来很好。 - egorikem

2

我的问题是我导入了oneSignal gradle插件,但我没有导入完整的apply plugin: 'com.google.gms.google-services'

为了解决这个问题,我只需要添加我正在使用的实现。


2

对于将来的用户:打开build.gradle文件,将鼠标悬停在依赖项上,会出现一个工具提示,告诉您最新的版本,这应该解决您的问题。

请注意,Firebase文档没有最新版本。

Translated Answer:

对于未来的用户: 打开build.gradle文件并将光标悬停在依赖项上。屏幕上会出现一个提示框,显示最新的版本号,这应该能够解决您的问题。

请注意,Firebase文档中可能不包含最新版本信息。


2
更新类路径以使用com.google.firebase:firebase-core:16+。最初的回答。
  classpath 'com.google.gms:google-services:4.2.0'

在项目的 build.gradle 中! - deadfish

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接