Android studio La ejecución falló para la tarea ': app: packageAllDebugClassesForMultiDex'

Tengo este error:

Execution failed for task ':app:packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry: com/google/android/gms/internal/zzrf.class 

Quiero agregar servicios de Google Play a mi proyecto por lo que poner esta línea en el archivo build.gradle:

 compile 'com.google.android.gms:play-services:7.8.0' 

Así que tuve que habilitar multidex y seguí android doc, agregando esto en build.gradle:

 compile 'com.android.support:multidex:1.0.1' 

y

 multiDexEnabled true 

Añado esto en android manifiesto:

 <application ... android:name="android.support.multidex.MultiDexApplication"> 

Pero tengo el error que escribí arriba. He encontrado un montón de preguntas relativas a este problema (app: packageAllDebugClassesForMultiDex) pero no con eso (entrada duplicada: / google / android / gms / internal / zzrf.class).

He intentado algunas soluciones como eliminar algunas bibliotecas de google, pero no sé qué se refiere a / zzrf.class interno.

Aquí está mi archivo gradle:

 apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.1" defaultConfig { applicationId "fr.djey.testgoogleplus" minSdkVersion 16 targetSdkVersion 22 versionCode 1 versionName "1.0" multiDexEnabled true } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:22.2.1' compile 'com.google.android.gms:play-services:7.8.0' compile 'com.android.support:multidex:1.0.1' } 

Me enfrenté al mismo problema. En mi caso utilicé una biblioteca Android hecha en casa usada por Mi aplicación para Android. Lo que significa 1 proyecto con 2 módulos independientes, mientras que el módulo app depende del módulo de la biblioteca. Ambos tienen soporte de multidex. La causa raíz fue la inconsistencia entre la versión de Google Play Services. En el módulo de la aplicación usé 7.8. + Y en la biblioteca que usé 8.1. +. Así que me acaba de actualizar tanto a la misma 8.1. + Y que fijo para mí. Por lo tanto, mi respuesta es comprobar todas las librerías de las que depende y 1 de ellas puede usar la versión de servicios de Google Play debajo de la suya.

Elimine todos los archivos en la carpeta de compilación de ese proyecto. En mi caso, es el archivo jar de todo el conflicto de juego de google con el archivo jar del servicio sólo anuncios.

Como dije en el comentario: Creé otro proyecto y solo hice las mismas cosas: poniendo servicios de google play y multidex, el problema no apareció más.

  • Google Play Service da Advertencia cada vez para la versión
  • Google Sign-in siempre falla en GoogleSignInResult
  • Android no recibe actualizaciones de ubicación cuando la pantalla está bloqueada
  • Firebase para servicios de juego por debajo de 9
  • Administrador de etiquetas: ¿Cómo cargar el contenedor predeterminado binario?
  • Liberar la aplicación de Android firmada, Google Plus Login y Google Map no funcionan
  • SecurityException: Invocación de Binder a una interfaz incorrecta en APK firmado
  • Después de la actualización de Google Play Service a la versión 13, recibí un error
  • Mensaje de LogCat: no se encontraron los recursos de servicios de Google Play. Compruebe la configuración de su proyecto para asegurarse de que los recursos están incluidos
  • Caché de dispositivos múltiples de Google IAB V3
  • Puedo editar el texto del botón de inicio de sesión en google?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.