Firebase更新后Gradle同步失败

3

从昨天开始(2018/08/14),我不能在不做任何更改的情况下构建我们的项目(两天前它还可以正常工作),因为出现了以下错误:

Failed to resolve: play-services-auth-base

我搜索了一下,发现有些解决方案说需要更新Firebase依赖项之类的。我们已经更新了所有Google的依赖项,但仍然出现错误。 这是我的Gradle Google依赖项:

//moudule level gradle

implementation 'com.google.firebase:firebase-auth:15.0.0'
implementation 'com.google.firebase:firebase-config:15.0.2'
implementation 'com.google.firebase:firebase-core:15.0.2'
implementation 'com.google.android.gms:play-services-auth:15.0.1'

//project level build.gradle

classpath 'com.android.tools.build:gradle:3.2.0-alpha18'
classpath 'com.google.gms:google-services:4.0.1'

更新到这个版本后:

implementation 'com.google.firebase:firebase-auth:16.0.3'
implementation 'com.google.firebase:firebase-config:16.0.0'
implementation 'com.google.firebase:firebase-core:16.0.1'
implementation 'com.google.android.gms:play-services-auth:16.0.0'

我收到了这个错误信息:
The library com.google.android.gms:play-services-measurement-base is being requested by various other libraries at [[15.0.4,15.0.4], [16.0.0,16.0.0]], but resolves to 16.0.0. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

谷歌更新了Firebase: Firebase Android 更新说明

问题是什么?


1
你尝试过将 classpath 'com.google.gms:google-services:4.0.1' 更改为 classpath 'com.google.gms:google-services:4.0.2',并将 classpath 'com.android.tools.build:gradle:3.2.0-alpha18' 更改为 classpath 'com.android.tools.build:gradle:3.1.4' 吗?这会有任何区别吗? - Alex Mamo
尝试将 firebase-core 移动到依赖列表中其他 firebase 库的上方。请参考此相关问题:https://stackoverflow.com/q/51025793/4815718 - Bob Snyder
请添加所有依赖项。您必须删除此行:(implementation 'com.google.firebase:firebase-core:16.0.1')。它存在于其他依赖项中。 - Haniyeh Khaksar
2个回答

2

在我的情况下,Firebase版本与OneSignal库存在冲突:

将OneSignal的版本从0.8.1设置为0.11.2可以解决问题。

以下是Firebase的依赖项:

implementation 'com.google.firebase:firebase-auth:16.0.3'
implementation 'com.google.firebase:firebase-config:16.0.0'
implementation 'com.google.android.gms:play-services-auth:16.0.0'

就是这样!

下面的解决方案也可以正常工作!

将依赖项的版本设置为11.8.0,像这样:

implementation 'com.google.firebase:firebase-config:11.8.0'
implementation 'com.google.firebase:firebase-core:11.8.0'
implementation 'com.google.android.gms:play-services-auth:11.8.0'

然后移除或注释掉这一行:

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

我发现由于传递依赖关系存在冲突,这些依赖关系之间存在冲突。


使用降级版本也可以,但我需要更高的版本 :) - Ali Khoshraftar

0
步骤1: classpath 'com.google.gms:google-services:4.1.0' // google-services插件
步骤2: allprojects repositories
    google() // Google's Maven repository

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