添加FirebaseUI库和支持库时,清单合并失败

时间:2017-09-29 17:22:57

标签: android android-studio firebase firebase-authentication firebaseui

我正在使用google firebase实施身份验证。我收到了这个错误。如果可能的话,请有人建议解决方案和解释,以便我能理解。

  

错误:任务':app:processDebugManifest'的执行失败。    清单合并失败:来自[com.android.support:design:26.0.1]的属性meta-data#android.support.VERSION@value value =(26.0.1)AndroidManifest.xml:28:13-35       也出现在[com.android.support:appcompat-v7:26.1.0] AndroidManifest.xml:28:13-35 value =(26.1.0)。       建议:在AndroidManifest.xml:26:9-28:38中添加'tools:replace =“android:value”'以覆盖。

以下是我的gradle文件

1.project module

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.3.3'
        classpath 'com.google.gms:google-services:3.1.0'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

2,模块应用

    apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    buildToolsVersion "26.0.1"
    defaultConfig {
        applicationId "com.example.prerak.final_audio_streamer"
        minSdkVersion 19
        targetSdkVersion 26
        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:26.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.google.firebase:firebase-ads:11.4.0'//advertisements

    compile 'com.firebaseui:firebase-ui-auth:2.4.0'// FirebaseUI Auth only
    compile'com.google.firebase:firebase-auth:11.4.0'//firebase auth
    compile 'com.google.android.gms:play-services:11.4.0'//playservice


    testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'

2 个答案:

答案 0 :(得分:0)

在清单

中的应用程序标记内添加此行
 <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version"
        tools:replace="android:value" />
完全如上所示。这不是您的整数目录,而是Android目录。

答案 1 :(得分:0)

您可以在official doc:

中找到
  

如果您想使用FirebaseUI的传递依赖项之一的较新版本,例如Firebase,Play服务或Android支持库,您需要在build.gradle中添加显式编译声明。您要使用的版本上的FirebaseUI依赖项

对于Auth,您必须在build.gradle

中添加这些行
compile "com.android.support:design:26.1.0"
compile 'com.android.support:appcompat-v7:26.1.0'
compile "com.android.support:customtabs:26.1.0"
compile "com.android.support:cardview-v7:26.1.0"