添加' com.firebaseui后,我收到错误:firebase-ui-auth:1.0.0'依赖。当我删除' com.firebaseui:firebase-ui-auth:1.0.0'时,错误消失了。从gradle。代码和图片包括在下面 请帮忙
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.example.a.chatapp"
minSdkVersion 22
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.0'
compile 'com.firebaseui:firebase-ui:0.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
答案 0 :(得分:12)
这里存在错误!
compile 'com.android.support:appcompat-v7:25.3.1'
所有com.android.support库必须使用完全相同的版本规范(混合版本可能导致运行时崩溃)。发现版本25.3.1,25.3.0。示例包括'com.android.support:animated-vector-drawable:25.3.0'和'com.android.support:mediarouter-v7:24.0.0'
看到这个例子
包括'com.android.support:animated-vector-drawable:25.3.0'
和'com.android.support:mediarouter-v7:24.0.0'
只需在依赖项中添加这些代码,确保版本相同。
只需更新build.gradle
文件: -
compile 'com.android.support:animated-vector-drawable:25.3.1'
compile 'com.android.support:mediarouter-v7:25.3.1'
答案 1 :(得分:5)
问题是您使用相同依赖项的两个(或更多)不同版本。第一个在gradle文件中指定,其他依赖项由您使用的库使用(在本例中可能是firebase-ui)。
这里有更多选择。首先,您应该尝试更新firebase-ui依赖项。他们通常会更新他们的支持权限,所以我猜他们在他们当前的主分支中使用与您相同版本的支持库(我猜你使用的是最新的com.android.support:appcompat'版本,对?)。 如果firebase-auth的最新版本没有使用当前版本的支持库,您可以降级支持库版本,以便它们匹配它们,您可以创建自己的firebase-auth分支并在其上保持更新拥有。
答案 2 :(得分:3)
答案 3 :(得分:2)
在build.gradle (Module:app)
文件的末尾添加以下代码行:
configurations.all {
resolutionStrategy.eachDependency { DependencyResolveDetails details ->
def requested = details.requested
if (requested.group == 'com.android.support') {
if (!requested.name.startsWith("multidex")) {
details.useVersion '27.1.1'
}
}
}
}
您必须从' 25.3.1'更改useVersion
到你当前的编译/实现SDK版本。
注意:强>
如果您仍在build.gradle文件中使用compile
,请将其替换为implementation
或api
,因为编译支持将于2018年底正式结束。
有关详细信息,请参阅:
Error: when I replace compile with implementation in gradle(dependency)
What's the difference between implementation and compile in gradle
答案 4 :(得分:0)
投入
// noinspection GradleCompatible
解决了我的问题
答案 5 :(得分:-1)
好吧,我读过评论,其中一些很好,但这是简单的解决方案 只需跟随视频
mixing version can lead to runtime crashes
转到您的gradle脚本-> build gradle(Module:app),然后根据需要添加尽可能多的实现。
在这里很难解释,我只是添加了链接以便于使用。