web-dev-qa-db-fra.com

java.util.Zip.ZipException: entrée en double: com/google/Android/gms/internal/zzbq.class

Je suis nouveau dans Android. Je travaille actuellement dans l'application Android et lorsque j'essaie d'exécuter l'application, cette erreur se produit.

J'ai recherché mais je ne peux pas résoudre cette erreur. 

Erreur

build.gradle

apply plugin: 'com.Android.application'

Android {
compileSdkVersion 23
buildToolsVersion "23.0.2"

defaultConfig {
    multiDexEnabled true
    applicationId "com.tutorialsbuzz.androidfacebook"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
    }
}
}

repositories {
mavenCentral()
}
dependencies {
compile 'com.Android.support:multidex:1.0.0'
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.Android.support:support-v4:23.0.1'
compile 'com.Android.support:design:23.0.1'
compile 'com.facebook.Android:facebook-Android-sdk:4.7.0'
compile 'com.squareup.picasso:picasso:2.4.0'
compile 'com.google.Android.gms:play-services-auth:9.2.1'
compile 'com.google.Android.gms:play-services:7.5.0'
}

merci d'avance

6
Draj

La raison derrière cela peut être que vous avez inclus deux versions différentes pour gms. De même, si vous avez inclus le package complet, il n'est pas nécessaire d'inclure le second 'compiler' com.google.Android.gms: play-services: 7.5.0 '' Si vous n'avez besoin que des services d'authentification de Google, n'incluez pas l'intégralité du contenu. package it ll dépassera les méthodes 65k et les chances de duplication seront là. Inclure ceci 

compiler 'com.google.Android.gms: play-services-auth: 9.4.0'

et de votre code supprimer 

compiler 'com.google.Android.gms: play-services-auth: 9.2.1' compiler 'com.google.Android.gms: play-services: 7.5.0'

Exécutez-le et faites le moi savoir une fois.

5
Preetika Kaur

Dans mon cas, c'est à cause de la 

compile 'com.facebook.Android:audience-network-sdk:4.+'

Je le change en ceci:

 compile ('com.facebook.Android:audience-network-sdk:4.+'){
        exclude group:"com.google.Android.gms"
    }

Plus de problème!

10
Hai nguyen thanh

Si vous utilisez Firebase, vous devriez lire ma solution. Dans mon cas, j'ai développé une nouvelle application. Cette nouvelle application a des annonces, donc je mets compile 'com.google.firebase:firebase-ads:11.0.4' AVANT compile 'com.google.firebase:firebase-core:11.0.4'.

Mais soit vous devez tout mettre APRÈS le firebase-core, soit le numéro de version 11.0.4 qui doit être identique sur tous les modules firebase que vous utilisez.

1
AlexioVay

Veuillez vous assurer que vous utilisez identique versions de com.google.gms. Vous pouvez exécuter la commande suivante à partir du répertoire racine du projet pour savoir quelles versions sont utilisées:

./gradlew :<subproject>:dependencies

Habituellement c'est quelque chose comme ça:

./gradlew :app:dependencies 

Après analyse, vous pouvez définir les mêmes versions ou le même groupe exclude à partir de certains modules ou exposer une version.

0
yoAlex5

Exclure com.google.Android.gms du paquet en cause a permis de construire le projet pour moi, mais malheureusement, l'application se bloquerait lors de l'initialisation. La solution pour moi était de mettre à jour toutes les dépendances firebase de 11.6.0 à 11.8.0, c'est-à-dire:

- compile "com.google.Android.gms:play-services-base:11.6.0"
- compile "com.google.firebase:firebase-core:11.6.0"
- compile "com.google.firebase:firebase-messaging:11.6.0"
- compile "com.google.firebase:firebase-analytics:11.6.0"
- compile "com.google.firebase:firebase-ads:11.6.0"

+ compile "com.google.Android.gms:play-services-base:11.8.0"
+ compile "com.google.firebase:firebase-core:11.8.0"
+ compile "com.google.firebase:firebase-messaging:11.8.0"
+ compile "com.google.firebase:firebase-analytics:11.8.0"
+ compile "com.google.firebase:firebase-ads:11.8.0"

Le problème ne se présentait que lors de l'ajout de firebase-ads mais cela a résolu le problème.

0
zpr