android - 添加 facebook sdk 后重复条目 : com/google/android/gms/internal/zzaa. 类

标签 android gradle

只有在我添加 facebook 受众网络 sdk 后尝试生成发布 apk 时才会出现此错误。

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

这是 gradle 文件:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

android {
    compileSdkVersion 24
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "com.coolcrazyapps.myapp"
        minSdkVersion 15
        targetSdkVersion 21
        versionCode 10
        versionName "2.0"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

repositories {
    mavenCentral()
    maven { url 'https://maven.fabric.io/public' }
}

dependencies {
    // Support Libraries
    // Misc Libraries
    compile fileTree(dir: 'libs')
    compile('com.crashlytics.sdk.android:crashlytics:2.5.2@aar') {
        transitive = true;
    }

    compile 'com.android.support:appcompat-v7:24.0.0'
    compile 'com.android.support:support-v13:24.0.0'
    compile 'com.android.support:support-v4:24.0.0'
    compile 'com.github.hotchemi:android-rate:0.4.1'
    compile('com.google.firebase:firebase-core:9.2.1')
    compile 'com.google.firebase:firebase-messaging:9.2.1'
    compile 'io.branch.sdk.android:library:1.+'
    compile 'com.android.support:design:24.0.0'
    compile('com.facebook.android:audience-network-sdk:4.13.0') {
        exclude group: 'com.google.firebase'
    }
}

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

这是 ./gradlew app:dependencies 的输出

_releaseApk - ## Internal use, do not manually configure ##
+--- com.android.support:multidex:1.0.1
+--- com.crashlytics.sdk.android:crashlytics:2.5.2
|    +--- com.crashlytics.sdk.android:answers:1.3.2
|    |    \--- io.fabric.sdk.android:fabric:1.3.6
|    +--- io.fabric.sdk.android:fabric:1.3.6
|    +--- com.crashlytics.sdk.android:crashlytics-core:2.3.5
|    |    +--- com.crashlytics.sdk.android:answers:1.3.2 (*)
|    |    \--- io.fabric.sdk.android:fabric:1.3.6
|    \--- com.crashlytics.sdk.android:beta:1.1.3
+--- com.android.support:appcompat-v7:24.0.0
|    +--- com.android.support:support-v4:24.0.0
|    |    \--- com.android.support:support-annotations:24.0.0
|    +--- com.android.support:support-vector-drawable:24.0.0
|    |    \--- com.android.support:support-v4:24.0.0 (*)
|    \--- com.android.support:animated-vector-drawable:24.0.0
|         \--- com.android.support:support-vector-drawable:24.0.0 (*)
+--- com.android.support:support-v13:24.0.0
|    \--- com.android.support:support-v4:24.0.0 (*)
+--- com.android.support:support-v4:24.0.0 (*)
+--- com.github.hotchemi:android-rate:0.4.1
+--- com.google.firebase:firebase-core:9.2.1
|    \--- com.google.firebase:firebase-analytics:9.2.1
|         +--- com.google.android.gms:play-services-basement:9.2.1
|         |    \--- com.android.support:support-v4:23.0.0 -> 24.0.0 (*)
|         +--- com.google.firebase:firebase-common:9.2.1
|         |    +--- com.google.android.gms:play-services-basement:9.2.1 (*)
|         |    \--- com.google.android.gms:play-services-tasks:9.2.1
|         |         \--- com.google.android.gms:play-services-basement:9.2.1 (*)
|         \--- com.google.firebase:firebase-analytics-impl:9.2.1
|              +--- com.google.android.gms:play-services-basement:9.2.1 (*)
|              +--- com.google.firebase:firebase-iid:9.2.1
|              |    +--- com.google.android.gms:play-services-basement:9.2.1 (*)
|              |    \--- com.google.firebase:firebase-common:9.2.1 (*)
|              \--- com.google.firebase:firebase-common:9.2.1 (*)
+--- com.google.firebase:firebase-messaging:9.2.1
|    +--- com.google.android.gms:play-services-basement:9.2.1 (*)
|    +--- com.google.firebase:firebase-iid:9.2.1 (*)
|    \--- com.google.firebase:firebase-common:9.2.1 (*)
+--- io.branch.sdk.android:library:1.+ -> 1.14.5
|    +--- com.android.support:support-annotations:22.2.0 -> 24.0.0
|    \--- io.branch.external.answersshim:answers-shim:0.0.4
+--- com.android.support:design:24.0.0
|    +--- com.android.support:support-v4:24.0.0 (*)
|    +--- com.android.support:recyclerview-v7:24.0.0
|    |    +--- com.android.support:support-annotations:24.0.0
|    |    \--- com.android.support:support-v4:24.0.0 (*)
|    \--- com.android.support:appcompat-v7:24.0.0 (*)
\--- com.facebook.android:audience-network-sdk:4.13.0
     +--- com.android.support:appcompat-v7:23.1.0 -> 24.0.0 (*)
     +--- com.google.android.gms:play-services-ads:8.4.0
     |    \--- com.google.android.gms:play-services-basement:8.4.0 -> 9.2.1 (*)
     \--- com.android.support:recyclerview-v7:23.1.0 -> 24.0.0 (*)

在 Android studio 中,我在这些地方看到了 zzaa 文件:

Duplicate file locations

让我知道如何解决这个问题,以及是什么导致了这个问题。

最佳答案

这解决了我的问题:

compile ('com.facebook.android:audience-network-sdk:4.13.0'){
     exclude group: 'com.google.android.gms'
 }

关于android - 添加 facebook sdk 后重复条目 : com/google/android/gms/internal/zzaa. 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38457018/

相关文章:

android - 在我的 fragment 中可以看到两个工具栏

android - 使用 adobe AIR 应用程序进行 Google 分析?

android - 原因:无效的区 block 类型[Android]

android - 如何以编程方式知道当前是否在通话中

Android - 共享

maven-2 - Buildr、Gradle 还是等待 Maven 3?

gradle - 如何在源文件中添加源代码文件作为构建依赖项和/或访问定义?

AndroidX 找不到 support-v4.aar

java - 内容解析器在 public void onActivityResult 的 fragment 内部变成红色

tomcat - 更改 gradle-tomcat-plugin 根 Web 应用程序目录