2016-09-22 4 views
0

ich einen Fehler bekam während unterzeichnet apk in Android Studio ErzeugungFehler mit gcm während unterzeichnet Erzeugen apk android

Error:Execution failed for task ':AppName:transformClassesWithJarMergingForRelease'. 
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/android/gms/common/internal/zzv$zza$zza.class 

Gradle ....

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.1" 

defaultConfig { 
    applicationId "myApp" 
    minSdkVersion 14 
    targetSdkVersion 23 
    multiDexEnabled true 
} 

buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' 
    } 
} 
dexOptions { 
    javaMaxHeapSize "2g" 
} 

compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_7 
    targetCompatibility JavaVersion.VERSION_1_7 
} 

packagingOptions { 
    exclude 'META-INF/DEPENDENCIES' 
    exclude 'META-INF/NOTICE' 
    exclude 'META-INF/LICENSE' 
    exclude 'META-INF/LICENSE.txt' 
    exclude 'META-INF/NOTICE.txt' 
} 
} 

dependencies { 
    compile 'org.altbeacon:android-beacon-library:2.1.4' 
    compile project(':qRCodeReaderViewlib') 
    compile project(':viewpagerindicator') 
    compile 'com.android.support:support-v4:23.1.1' 
    compile 'com.google.android.gms:play-services-maps:9.0.0' 
    compile 'com.android.support:appcompat-v7:23.1.1' 
    compile files('libs/android-query-full.0.26.7.jar') 
    //compile files('libs/gcm.jar') 
    compile files('libs/mint-4.4.0.jar') 
    compile 'com.squareup.okhttp3:okhttp:3.2.0' 
    compile 'com.android.support:multidex:1.0.1' 
    compile 'com.google.firebase:firebase-messaging:9.4.0' 
} 
// Add to the bottom of the file 
apply plugin: 'com.google.gms.google-services' 

Jede Hilfe? Vielen Dank im Voraus ..

+0

fügen Sie diese Zeile sagen filetree dependency..compile (dir: 'libs', schließen ein: [ '* .jar']) .. und fügen Sie das Glas Dateien zu Abhängigkeit .. und synchronisieren Sie das Projekt –

+0

Es kann sein, weil Sie verschiedene Versionen von Play-Dienste verwenden, werfen Sie einen Blick auf diese http://StackOverflow.com/A/38201741/3111083 –

Antwort

1

Sie verwenden verschiedene Versionen des Spiels services.this endet in der Regel bis in error.change

compile 'com.google.android.gms:play-services-maps:9.0.0' 

zu

compile 'com.google.android.gms:play-services-maps:9.4.0' 

https://stackoverflow.com/a/38201741/3111083.

+1

Dank dude @Sunil sonnig –

1

Dies ist ein Fall von doppelten oder transitiven Abhängigkeiten in Ihrem Gerät. Um zu überprüfen, woher die Duplizierung stammt, konstruiere immer zuerst den Abhängigkeitsbaum.

Dies geschieht über die allDependencies Gravele Aufgabe. Klicken Sie auf der rechten Leiste in Ihrem Android Studio auf Gradle> App> Aufgaben> Android> Android-Abhängigkeiten. Ihre gradle Konsole wird nun Ihren Abhängigkeitsbaum in Form von

| +--- pm.tin.tincan.android:sectioned-recyclerview:1.0 
| +--- com.crashlytics.sdk.android:crashlytics:2.5.1 
| | +--- io.fabric.sdk.android:fabric:1.3.5 
| | +--- com.crashlytics.sdk.android:crashlytics-core:2.3.4 
| | | +--- io.fabric.sdk.android:fabric:1.3.5 
| | | \--- com.crashlytics.sdk.android:answers:1.3.1 
| | |   \--- io.fabric.sdk.android:fabric:1.3.5 
| | +--- com.crashlytics.sdk.android:beta:1.1.3 
| | | \--- io.fabric.sdk.android:fabric:1.3.5 
| | \--- com.crashlytics.sdk.android:answers:1.3.1 
| |   \--- io.fabric.sdk.android:fabric:1.3.5 
| +--- com.google.android.gms:play-services-gcm:8.4.0 
| | +--- com.google.android.gms:play-services-base:8.4.0 
| | | \--- com.google.android.gms:play-services-basement:8.4.0 
| | \--- com.google.android.gms:play-services-measurement:8.4.0 
| |   \--- com.google.android.gms:play-services-basement:8.4.0 
| +--- de.hdodenhof:circleimageview:2.0.0 

Hier ausgegeben hat, überprüfen Sie für widersprüchlichen Versionen Bibliothek überall in Ihrem Baum. Sobald das geklärt ist, können Sie in Konflikt stehenden deps ausschließen, indem

compile("com.crashlytics.sdk.android:crashlytics:2.5.1") { 
      transitive = true 
      exclude group: "com.android.support" // Conflicting dep removed here 
     } 
Verwandte Themen