我已经在Firebaseui文档上看到了这个问题,但是我一生都无法理解解决方案。我想使用最新版本的Firebase Auth和Firestore,以及最新版本的Firebaseui。这可能吗?请不只是将我链接到依赖性问题的文档,我真的很喜欢对文档的解释以及在我的依赖项上实际写的内容来解决此问题。我很想写自己的UI,但是Firebaseui太好了,无法通过。这是我现在的依赖性:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.google.firebase:firebase-firestore:11.8.0'
implementation 'com.google.firebase:firebase-auth:11.8.0'
implementation 'com.android.support:design:26.1.0'
implementation 'com.google.firebase:firebase-core:11.8.0'
implementation 'com.google.firebase:firebase-database:11.8.0'
testImplementation 'junit:junit:4.12'
implementation 'com.android.support:appcompat-v7:26.1.0'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
implementation 'com.firebaseui:firebase-ui-auth:3.1.2'
}
通过我过去的修复尝试,我刚刚尝试降低版本的firebase ..但这不是我想要的解决方案,通常只是导致其他错误。非常感谢您!
编辑:这是错误消息:所有GMS/Firebase库必须使用完全相同的版本规范(搅拌版本可能导致运行时崩溃)。发现的版本11.8.0,11.6.2。示例包括com.google.android.gms:play0services-base:11.8.0和com.google.android.gms:play-services-auth:11.6.2。
{大概是因为firebaseui 3.1.2取决于firebase 11.6.2。但是我要使用的版本是11.8.0}
您可以使用exclude
关键字来排除依赖关系的依赖。
implementation('com.firebaseui:firebase-ui-auth:3.1.2') {
exclude group: 'com.google.android.gms'
exclude group: 'com.google.firebase'
}
firebase SDK版本11.8.0 2017年12月18日发布,目前尚无正式发布的Firebaseui版本。您可以在https://github.com/firebase/firebaseui-android
上查看Firebase UI -Firebase Services的相应版本相应的firebaseui版本和firebase/play服务版本列为:
3.1.2 --- 11.6.2
3.1.0 --- 11.4.2
3.0.0 --- 11.4.2
2.4.0 --- 11.4.0
...
这就是为什么您会遇到错误的原因:
all gms/firebase libraries must use the exact same version specification(mixing versions can lead to runtime crashes). Found versions 11.8.0,11.6.2. Examples include com.google.android.gms:play0services-base:11.8.0 and com.google.android.gms:play-services-auth:11.6.2.
检查您的
是否compile 'com.android.support:appcompat-v7:**26**.1.0'
版本与您的
相同targetSdkVersion **26**
我的不同,改变了这一问题。