我已经在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}
答案 0 :(得分:3)
您可以使用exclude
关键字排除依赖项的依赖关系。
implementation('com.firebaseui:firebase-ui-auth:3.1.2') {
exclude group: 'com.google.android.gms'
exclude group: 'com.google.firebase'
}
答案 1 :(得分:0)
Firebase SDK版本11.8.0于2017年12月18日发布,目前尚未正式发布该版本的FirebaseUI版本。您可以在https://github.com/firebase/FirebaseUI-Android
查看相应版本的Firebase用户界面 - Firebase服务对应的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.
答案 2 :(得分:0)
检查你的
compile 'com.android.support:appcompat-v7:**26**.1.0'
版本与您的
相同targetSdkVersion **26**
我的不同,改变这个解决了这个问题。