El nombre de la entrada 'AndroidManifest.xml' colisionó (la compilación falló después de actualizar el complemento de Android Gradle a 3.6.0)

11

Recientemente he actualizado el estudio de Android de 3.5 (estable) a 3.6 (estable).

Luego vi que la actualización del complemento también está disponible, así que he actualizado la versión de "com.android.tools.build:gradle" de 3.5.0 a 3.6.0 y también actualizo la versión de gradle a 5.6.4

Ahora el problema comienza cuando intento compilar el proyecto, falla con el mensaje El nombre de la entrada 'AndroidManifest.xml' colisionó

ingrese la descripción de la imagen aquí

Rikin Prajapati
fuente
¿Puedes agregar una imagen de error para una mejor comprensión?
Prarat Korat
Causado por: java.lang.IllegalStateException: el nombre de entrada 'AndroidManifest.xml' colisionó en com.android.zipflinger.ZipArchive.validateName (ZipArchive.java:302) en com.android.zipflinger.ZipArchive.writeSource (ZipArchive.ja (ZipArchive.ja) ) en com.android.zipflinger.ZipArchive.add (ZipArchive.java:126) en com.android.signflinger.SignedApk.add (SignedApk.java:135) ... en org.gradle.internal.work.DefaultConditionalExecutionQueue $ ExecutionRunner .run (DefaultConditionalExecutionQueue.java:131) ... 3 más
T. Aslam
Tengo el mismo problema. Ejecuté "./gradlew assembleDebug --debug" y obtuve este registro de errores "Tarea: aplicación: packageDebug FAILED". Podría ser algo malo con la nueva herramienta de empaque. Compilación exitosa después de deshabilitarla agregando "android.useNewApkCreator = false" en el archivo gradle.properties
Peter
lo mismo aquí ... después de actualizar Android Studio a 3.6 y actualizar todos los complementos disponibles, este problema aparece cuando intenta ejecutar la aplicación y reconstruir el proyecto. El nombre de la entrada 'AndroidManifest.xml' colisionó , no sé qué hacer.
Espada
Por favor, eche un vistazo a una respuesta similar stackoverflow.com/a/60469132/10646780
Jatin Sahgal

Respuestas:

23

Esto es causado por el complemento Android Gradle 3.6, vuelva a usar la herramienta de empaquetado anterior al incluir lo siguiente en su archivo gradle.properties solucionará esto:

android.useNewApkCreator=false

Más información, consulte la nota de lanzamiento: https://developer.android.com/studio/releases/gradle-plugin#zipflinger

xfx
fuente
1
¿Dónde deberías agregar esto exactamente?
Rami Ammoun
1
gradle.properties
sweggersen
Esta es una respuesta útil. Podría ser aún mejor si hubiera una explicación de lo que no le gusta a la nueva herramienta.
Jameson
Me estaba volviendo todo ninja en este tema limpiando mi proyecto. Invalidar y reiniciar por un millón de veces. Gracias, esto ayudó. También, mi error fue: el nombre de entrada 'kotlin / collections / MapWithDefault.kotlin_metadata' colisionó
Karan Sharma
6

Encontré una solución agregando esto a la aplicación build.gradle:

android {
    packagingOptions {
        exclude 'AndroidManifest.xml'
    }
}

Tuve esto para solucionar un problema con la creación de un paquete, debido a la red de audiencia de Facebook, en Android Studio 3.5.

Marco Batista
fuente
3

Me sale un error similar: el nombre de entrada 'resources.arsc' colisionó. Solución alternativa como @Marco Batista dijo:

android {
    packagingOptions {
        exclude 'resources.arsc'
    }
}
android_su
fuente