2017-05-25 2 views
0

Je peux exécuter l'application et je peux l'utiliser, mais je ne peux pas générer apk signé. Voici le journal et le débogage apk est en cours d'exécution sur certains appareils seulement.Impossible de générer apk signé, mais ça fonctionne bien

Error:Execution failed for task ':app:transformClassesWithJarMergingForRelease'.com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/gson/annotations/Expose.class

Voici mon appl.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' 
//apply plugin: 'com.google.gms.google-services' 

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


android { 
    compileSdkVersion 25 
    buildToolsVersion '25.0.2' 
    compileOptions.encoding = 'UTF-8' 
    signingConfigs { 

    } 
    repositories { 
     //jcenter() 
     mavenCentral() 
     maven { 
      url 'http://repo.brightcove.com/releases' 
     } 
    } 

    defaultConfig { 
     applicationId "com.asd.asd" 
     minSdkVersion 17 
     targetSdkVersion 23 
     versionCode 1 
     versionName "1.0" 
     manifestPlaceholders = [partner: "asd"] 
     multiDexEnabled = true 

    } 

    dexOptions { 
     incremental true 
     javaMaxHeapSize "4g" 
    } 

    buildTypes { 
     debug { 
      buildConfigField 'boolean', 'IS_ENABLE_ADS', 'true' 
      signingConfig signingConfigs.debug 
      debuggable true 
     } 

    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 

    compile(name: 'MfsAndroidLibrary', ext: 'aar') 
    compile 'com.android.support:appcompat-v7:25.1.1' 
    compile 'com.android.support:design:25.1.1' 
    compile 'com.android.support:cardview-v7:25.1.1' 
    compile 'com.android.support:recyclerview-v7:25.1.1' 
    compile 'com.android.support:percent:25.1.1' 
    //compile 'com.android.support:design:22.2.0' 
    compile files('libs/gson-2.2.4.jar') 
    compile 'com.facebook.android:facebook-android-sdk:4.17.0' 

    compile('com.crashlytics.sdk.android:crashlytics:[email protected]') { 
     transitive = true; 
    } 
    compile 'com.afollestad.material-dialogs:commons:0.9.3.0' 
    compile 'com.brightcove.player:exoplayer:4.+' 
    compile 'com.google.android.gms:play-services-gcm:10.0.1' 
    compile 'com.google.android.gms:play-services-location:10.0.1' 
    compile 'com.useinsider:insider:6.0.8' 

    compile 'com.google.android.gms:play-services-maps:10.0.1' 
    compile 'com.pitt.fresh.library:freshdownloadview:1.0' 

    //compile 'cn.pedant.sweetalert:library:1.3' 

    // compile 'com.tkurimura:flickabledialog:0.9.0' 

    compile 'com.android.support.constraint:constraint-layout:1.0.2' 
    compile 'org.jetbrains:annotations-java5:15.0' 
    compile 'com.github.bumptech.glide:okhttp3-integration:1.4.0[email protected]' 
    compile 'com.squareup.okhttp3:okhttp:3.2.0' 
    compile 'com.google.android.gms:play-services-analytics:10.0.1' 
    compile 'org.jsoup:jsoup:1.7.3' 
    compile 'com.afollestad:sectioned-recyclerview:0.2.3' 
    compile 'com.tonicartos:superslim:0.4.13' 
    //for select birthday 

    compile 'com.github.flavienlaurent.datetimepicker:library:0.0.2' 

    //image libraries 
    compile 'com.github.bumptech.glide:glide:3.7.0' 
    compile 'com.makeramen:roundedimageview:2.3.0' 

    compile 'com.google.android.gms:play-services-ads:10.0.1' 

    compile 'com.useinsider:insider:6.1.7' 

    compile 'com.wang.avi:library:1.0.2' 
    compile 'com.nineoldandroids:library:2.4.0' 
    compile 'io.card:android-sdk:5.3.0' 

    compile 'com.bkm.bexandroidsdk:bexandroidsdk:1.1.2' 

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

et racine gradle

// Top-level build file where you can add configuration options common to all sub-projects/modules. 

buildscript { 
    repositories { 
     jcenter() 

    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.2.3' 
     classpath 'com.google.gms:google-services:3.0.0' 

     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 

     flatDir{ 

      dirs 'libs' 
     } 
     maven { url "http://mobile.useinsider.com" } 
     maven { url 'https://dl.bintray.com/bkmexpress/maven' } 
     maven { 
      url "https://jitpack.io" 
     } 
    } 
} 

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

La question de base est que certains de votre dépendance est en utilisant 'gson' avec une version différente de' 2.2.4'. Vous devez trouver cette dépendance et 'exclure le module: 'gson'' de cette dépendance. –

+0

Je trouve gson 2.7 dans la bibliothèque externe mais sunsertificationexception quand je le supprime. – 6155031

+1

Non ne pas le supprimer de la bibliothèque externe. Soit vous pouvez le faire 'compiler ('lib using gson 2.7') {' 'excluez le module: 'gson'' '} 'ou téléchargez simplement' gson 2.7 jar' et remplacez le' 2.2.4'. https://mvnrepository.com/artifact/com.google.code.gson/gson/2.7 –

Répondre

1

Je supprimé cette ligne

compile files('libs/gson-2.2.4.jar') 

ajouté ce code et il fonctionne

compile ('com.google.code.gson:gson:2.7'){ 
     transitive = true; 
     exclude module: 'gson' 
    }