如何修复 Android Studio 中与 gms/internal/zzaso.class 有关的重复输入错误?

How to fix duplicated entry error related to: gms/internal/zzaso.class in Android Studio?

我很难尝试构建我的应用程序的签名 apk,但我有一个与 google/android/gms class 相关的错误。您知道问题出在哪里吗?

还有一件事,只有当我尝试生成签名的 apk 时才会出现此错误,但在开发模式下它在我的 smartphone 中运行良好。 (我想生成我的应用程序,以便任何人都可以将其安装在他们的 phone 上)

我google了一下,我知道是和gms版本有关,但是我无法确定代码中具体哪里是依赖项不兼容。

这是gradle:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "26.0.1"
    defaultConfig {
        applicationId "com.test_app.myfinalapp"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

android {
    useLibrary 'org.apache.http.legacy'
}

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.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.volley:volley:1.0.0'
    compile 'com.google.firebase:firebase-auth:10.0.1'
    compile 'com.firebaseui:firebase-ui:2.0.1'
    compile 'com.firebaseui:firebase-ui-auth:2.0.1'
    compile 'me.dm7.barcodescanner:zxing:1.8.4'
    compile 'com.loopj.android:android-async-http:1.4.9'
    testCompile 'junit:junit:4.12'
}


apply plugin: 'com.google.gms.google-services'

这是错误:

Error:Execution failed for task ':app:transformClassesWithJarMergingForRelease'.
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/android/gms/internal/zzaso.class
  1. 删除

    compile 'com.google.firebase:firebase-auth:10.0.1'
    

    compile 'com.firebaseui:firebase-ui:2.0.1'
    

    如果您只使用 firebase-ui-auth,如果您还使用其他 firebase-ui 组件,则删除

    compile 'com.firebaseui:firebase-ui-auth:2.0.1'
    
  2. firebase-ui 依赖版本从 2.0.1 更新到 3.1.0