Android 在项目中';app&x27;已解决的Google Play服务库依赖依赖于另一个精确版本
尝试使用FireStore和Google身份验证创建一个简单的应用程序。gradle有问题: 在项目“app”中,已解决Google Play services库依赖关系 依赖于另一个精确版本(例如“[15.0.1]”,但不是 正在解析为该版本。库显示的行为将 不知道 依赖失败:com.google.android.gms:play服务标志:15.0.1 ->com.google.android.gms:游戏服务库@[ 15.0.1],但play services的基本版本是16.0.1 以下依赖项是直接或间接的项目依赖项 具有可传递的依赖关系,从而导致与 问题 --项目“应用程序”依赖于com.google.firebase:firebase-firestore@17.1.5 --项目“应用程序”依赖于com.firebaseui:firebaseui-auth@4.2.0 对于扩展调试信息,请使用以下命令行执行Gradle ./gradlew--info:app:assembleDebug查看到的dep-endence路径 工件。此错误消息来自google服务梯度 插件,在https上报告问题:// github.com/google/play-services-plugins并通过添加 将“googleServices{disableVersionCheck=false}”添加到b build.gradle 文件 格拉德尔项目:Android 在项目中';app&x27;已解决的Google Play服务库依赖依赖于另一个精确版本,android,android-gradle-plugin,firebaseui,Android,Android Gradle Plugin,Firebaseui,尝试使用FireStore和Google身份验证创建一个简单的应用程序。gradle有问题: 在项目“app”中,已解决Google Play services库依赖关系 依赖于另一个精确版本(例如“[15.0.1]”,但不是 正在解析为该版本。库显示的行为将 不知道 依赖失败:com.google.android.gms:play服务标志:15.0.1 ->com.google.android.gms:游戏服务库@[ 15.0.1],但play services的基本版本是16.0.1 以下依
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
classpath 'com.google.gms:google-services:4.2.0'
}
}
有人能帮我吗?问题是它缺少依赖项。 添加com.google.firebase:firebase auth解决了这个问题
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
implementation 'com.google.firebase:firebase-firestore:17.1.5'
// implementation'com.google.firebase:firebase-core:16.0.6'
// implementation'com.google.firebase:firebase-storage:16.0.5'
implementation'com.google.firebase:firebase-auth:16.1.0' => add this line
implementation 'com.firebaseui:firebase-ui-auth:4.2.0'
}
将我所有的Google Play服务库更新为所有模块中的最新版本为我解决了这个问题。我看不出你有任何Google Play服务库,但我想把这个答案留给那些可能觉得有用的人。谢谢,但不幸的是,这对我来说并不完全有效。我还必须在我的构建中添加以下内容.年级(模块:应用程序) Google Services 4.2.0中存在一个问题可能会导致此问题。在项目的构建中,将Google Services版本降级为4.1.0。gradle可能会解决此问题
buildscript {
dependencies {
classpath 'com.google.gms:google-services:4.1.0' //decreased from 4.2.0
}
}
将FCM添加到你的应用程序添加了较低的依赖项,然后我将依赖项更改为此问题已解决的最新版本
compile 'com.google.firebase:firebase-messaging:17.3.4'
到
我在我的项目中将最新版本的firebase messaging添加到build.gradle(模块:app)中,并解决了问题
implementation 'com.google.firebase:firebase-messaging:20.0.0'
对我来说,可行的解决方案是删除“firebase auth”并添加“firebase core”依赖项。但在几次项目重建后,我开始遇到另一个编译问题,因此我不得不在“firebase core”之外添加“firebase auth”依赖项,以使其正常工作:
implementation 'com.google.firebase:firebase-auth:19.0.0'
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
这里有许多答案可供个别解决方案参考,但这些解决方案并不能真正解决问题。以下是解决问题的一般方法。: 如原始日志输出所示,使用以下命令在终端中运行构建非常有用:
/gradlew--info assembleDebug
这将为您提供冲突中涉及的所有依赖项的列表。它看起来与此类似(我删除了包名内容以使其更具可读性):
从这个列表中,您可以了解两件事:
firebase iid
:它要么是@19.0.0
要么是@16.2.0
要解决此问题,必须在build.gralde
中明确定义错误的firebase iid
的顶级依赖项
因此,在上面的日志中,您可以看到firebase过时版本的两个示例-iid@16.2.0.一个来自——任务/模块dep->firebase-messaging@17.1.0
另一个来自第三方库(pressenger)。我们对第三方库没有影响,因此在此不做任何事情。
但对于另一个依赖项,我们必须使用正确的版本显式声明它:
implementation'com.google.firebase:firebase消息:20.0.0'
现在构建工作又开始了。大团圆结局:)我的项目运行良好(没有构建问题)。突然,我犯了这个错误 “已解决的Google Play services库依赖于另一个精确版本的库…” 我发现这是因为我在离线构建
如果有人遇到同样的错误,请检查您是否正在脱机构建如果您的网络不安全,并且您收到不受信任证书的提示,这对我来说是一件新鲜事 如果您将接受或拒绝,它将给出此错误,直到您的网络不安全为止
您可以通过检查设置->渐变->脱机模式来脱机工作有一个与google服务相关的bug,该bug最终在版本
4.3.3
中修复
因此,您可以使用4.3.3或
或降级至4.1.0
classpath 'com.google.gms:google-services:4.1.0'
其他答案都不适合我。我的用例是使用
React Native 61+
尝试设置FCM和分析。对我来说,最有效的方法是在android/build.gradle
dependencies {
classpath "com.android.tools.build:gradle:3.4.2"
classpath "com.google.gms:google-services:4.3.3" // Need the latest here
}
然后将gradle依赖项添加到我使用的产品所需的android/app/build.gradle(在我的例子中是分析和云消息)
你的
app/build.gradle
可能会在Android Studio中的依赖项部分阻止这些柠檬色,如下图所示
这些(柠檬色块)意味着它不是最新版本的依赖关系。只需将鼠标放在每个块上,IDE(Android Studio)就会告诉您必须更改的数字 如果您使用了song haesuk答案,则需要在build.gradle项目(依赖项中的类路径)和build.gradle应用程序(实现)中都使用它。如果更改导入应用程序的任何库的生成,也要执行相同的操作 我使用暗示
implementation 'com.google.firebase:firebase-auth:19.0.0'
implementation 'com.google.firebase:firebase-core:17.0.1'
implementation 'com.firebaseui:firebase-ui-auth:4.3.1'
Dependency Resolution Help: Displaying all currently known paths to any version of the dependency: Artifact(groupId=com.google.firebase, artifactId=firebase-iid)
-- task/module dep -> firebase-analytics@17.2.0
---- firebase-analytics:17.2.0 library depends -> play-services-measurement-api@17.2.0
------ play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
-- task/module dep -> firebase-core@17.2.0
---- firebase-core:17.2.0 library depends -> firebase-analytics@17.2.0
------ firebase-analytics:17.2.0 library depends -> play-services-measurement-api@17.2.0
-------- play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
-- task/module dep -> play-services-measurement-api@17.2.0
---- play-services-measurement-api:17.2.0 library depends -> firebase-iid@19.0.0
-- task/module dep -> firebase-iid@19.0.0
-- task/module dep -> firebase-messaging@17.1.0
---- firebase-messaging:17.1.0 library depends -> firebase-iid@[16.2.0]
-- task/module dep -> com.pressenger:sdk@4.8.0
---- com.pressenger:sdk:4.8.0 library depends -> firebase-messaging@17.1.0
------ firebase-messaging:17.1.0 library depends -> firebase-iid@[16.2.0]
classpath 'com.google.gms:google-services:4.3.3' // or latest version
classpath 'com.google.gms:google-services:4.1.0'
dependencies {
classpath "com.android.tools.build:gradle:3.4.2"
classpath "com.google.gms:google-services:4.3.3" // Need the latest here
}
dependencies {
...
// add the Firebase SDK for Google Analytics
implementation 'com.google.firebase:firebase-messaging:20.1.0'
implementation 'com.google.firebase:firebase-analytics:17.2.2'
...
}
classpath 'com.google.gms:google-services:4.3.3'
implementation 'com.google.firebase:firebase-core:17.3.0'
implementation 'com.google.firebase:firebase-messaging:20.1.5'
implementation 'com.google.firebase:firebase-database:19.3.0'
implementation 'com.google.firebase:firebase-auth:19.3.1'
implementation 'com.google.firebase:firebase-messaging:20.1.7'
implementation 'com.google.firebase:firebase-core:17.4.0'
implementation 'com.google.firebase:firebase-storage:19.1.1'
implementation 'com.google.firebase:firebase-analytics:17.2.2'
apply plugin: 'com.google.gms.google-services'
dependencies {
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0-alpha4'
implementation 'androidx.multidex:multidex:2.0.0'
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
//Android Support Design Library
implementation 'com.android.support:design:27.1.1'
//RecyclerView
implementation 'com.android.support:recyclerview-v7:27.1.1'
// Support multidex
implementation 'com.android.support:multidex:1.0.3'
// Firebase Core
// implementation 'com.google.firebase:firebase-core:16.0.1'
//Firebase Authentication
implementation 'com.google.firebase:firebase-auth:19.3.1'
// Firestore Firestore
implementation 'com.google.firebase:firebase-firestore:21.4.3'
implementation 'com.google.firebase:firebase-analytics:17.2.2'
// glide
implementation 'com.github.bumptech.glide:glide:4.8.0'
annotationProcessor 'com.github.bumptech.glide:compiler:4.8.0'
// Circle ImageView
implementation 'de.hdodenhof:circleimageview:2.2.0'
}
apply plugin: 'com.google.gms.google-services'
dependencies {
classpath 'com.android.tools.build:gradle:3.5.3'
classpath 'com.google.gms:google-services:4.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
apply plugin: 'com.android.application'
This worked for me!
dependencies {
classpath "com.android.tools.build:gradle:3.4.2"
classpath "com.google.gms:google-services:4.3.3" // Need the latest here
}
dependencies {
...
// add the Firebase SDK for Google Analytics
implementation 'com.google.firebase:firebase-messaging:20.1.0'
implementation 'com.google.firebase:firebase-analytics:17.2.2'
...
}