Error relacionado con resources_ap después de actualizar a Android Studio 3.4

79

Actualicé Android Studio 3.4 hoy. Ya no puedo ejecutar la aplicación. Limpié el proyecto, reinicié Android Studio muchas veces. También he invalidado el caché en vano. Recibo el siguiente error al instalar la aplicación:

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:transformDexWithInstantRunSlicesApkForDebug'.
> java.lang.RuntimeException: java.io.FileNotFoundException: E:\...\app\build\intermediates\instant_run_split_apk_resources\debug\instantRunSplitApkResourcesDebug\out\slice_1\resources_ap

¿Alguien podría ofrecer un consejo sobre cómo remediar esto?

Editar: tengo dos proyectos con diferentes comportamientos relacionados con este problema:

  1. El Proyecto A inicialmente tuvo este problema. Inhabilité Instant Run según la respuesta, el problema se resolvió. Activé Instant Run más tarde y el Proyecto A todavía funciona bien.
  2. El Proyecto B también tenía este problema que se solucionó desactivando Instant Run. Sin embargo, su problema ocurrirá tan pronto como se encienda Instant Run. No sé qué diferencia entre estos dos proyectos resulta en esto. Un sospechoso es el proyecto de la biblioteca C. La biblioteca C es parte del Proyecto A (es decir, su código fuente, los recursos están en el Proyecto A). Sin embargo, el Proyecto B usa el aar de la Biblioteca C como módulo.
Hong
fuente
6
Desactivar Instant Run en Configuración eliminó el problema para mí (como se describe en la respuesta al Error: Error de ejecución para la tarea ': app: transformDexWithInstantRunSlicesApkForDebug'. No se pudo leer el archivo zip )
Marco Borchert
@MarcoBorchert Gracias. Comenzó a funcionar después de que apagué Instant Run. Volví a activar Instant Run más tarde y todavía está funcionando ahora. Parece que desactivar Instant Run no implica ningún trabajo de limpieza que no pueda realizarse con otros métodos de limpieza habituales. ¿Podrías convertir tu comentario en una respuesta para que pueda aceptarlo?
Hong
@MarcoBorchert Para otro proyecto, no puedo volver a activar Instant Run. Tengo que estar fuera todo el tiempo.
Hong

Respuestas:

67

Desactivar Instant Run como solución (Archivo / Configuración / Instant Run) parece eliminar el problema.

Según OP, es posible volver a activar Instant Run sin que el problema se repita para algunos proyectos.

Marco Borchert
fuente
94

El problema debe solucionarse en Android Studio 3.4.2.


EDITAR: Aquí está mi respuesta anterior sobre cómo solucionarlo en Android Studio 3.4.0 y 3.4.1:

Usar Gradle 5.4 en lugar de 5.1.1 me ayudó con este error.

Actualice el archivo gradle-wrapper.properties con: distributionUrl=https\://services.gradle.org/distributions/gradle-5.4-all.zip

Tenga en cuenta que no he probado versiones anteriores de Gradle, por lo que es posible que incluso (por ejemplo) la versión 5.2 funcione. Puede ver todas las versiones de Gradle aquí: https://gradle.org/releases/

Robyer
fuente
Gracias. Acabo de probar y confirmar que este remedio funciona. Desafortunadamente, solo puedo aceptar una respuesta. Supongo que Google abordará este problema con una actualización de una forma u otra. Una forma es forzar la actualización de Gradle.
Hong
5
@Hong Sin embargo, puedes cambiar la respuesta aceptada. Esta solución es claramente preferible y más útil para otros lectores, ya que no es simplemente una solución alternativa.
Marco Borchert
Perdóneme por ser conservador en estas cosas. Por lo general, me mantengo alejado de las últimas versiones a menos que se hayan probado exhaustivamente. Supongo que cada actualización de Android Studio ha sido probada por muchos probadores beta antes de su lanzamiento.
Hong
@Hong Bueno, creo que podemos confiar más en las pruebas de Gradle (ya que esa versión se lanzó públicamente desde hace algún tiempo) que en Android Studio recién lanzado con este problema obvio. Además, no he probado otras versiones de Gradle, pero tal vez pueda usar una versión anterior a la 5.4 si desea no usar la última (también tenga en cuenta que la última ahora es 5.4.1); consulte gradle.org/releases Actualicé mi respuesta con esto info.
Robyer
1
Esto parece haber funcionado en AndroidStudio 3.4 en una Mac. Gracias @Robyer
Hugo
39

No es necesario desactivar Instant Run.
Simplemente elimine el directorio '.gradle' en el proyecto y compile el directorio dentro del módulo 'aplicación'.
Realice un proyecto limpio y un proyecto de reconstrucción.
Esto solucionará el problema.

Bibin Johny
fuente
5
¡Respuesta correcta para mí! Incluso no necesitaba hacer una limpieza. Simplemente eliminó la carpeta .gradle (elija el modo 'Proyecto' en la ventana izquierda de Android Studio).
Regis_AG
2
¡Respuesta correcta! No es necesario desactivar la ejecución instantánea. ¡Gracias!
rstewart22
¡Ohhhh sí! Esta es la respuesta.
Teddy
¡Muchas gracias! Estuve luchando alrededor de una hora hasta que vi tu consejo.
Igor de Lorenzi
¡Muchas gracias! Lo he intentado todo, pero no funciona. Solo esto funciona. Si solo veo esto unas horas antes
user1885498
6

Esto es causado por la función de "ejecución instantánea" en Android Studio 3.4, puede deshabilitarla de la siguiente manera:

Abra el cuadro de diálogo Configuración o Preferencias. Vaya a Compilación, Ejecución, Implementación> Ejecución instantánea. Desmarque la casilla junto a Habilitar ejecución instantánea

Disfrutar...!

Mahi Saini
fuente
2

Vaya a la carpeta de su proyecto y mueva todo desde ... \ app \ build \ a alguna otra carpeta fuera del proyecto. (para borrar la carpeta de compilación con copia de seguridad) En mi caso, borrar la carpeta de compilación resolvió el problema, hasta entonces estaba desactivando la opción Ejecutar instantánea para cada nueva instalación.

Duro
fuente
3
En mi caso, no fue suficiente mover el builddirectorio, también tuve que mover .gradley eso solucionó el problema.
Carrizo
0

Probé las soluciones "Gradle 5.4" y "Desactivar ejecución instantánea", pero no funcionaron hasta que activé la opción "Esperar depurador" hasta "Opciones de desarrollador" en mi teléfono (Huawei Mate 10). He confirmado que esto solo funciona con "Instant Run" desactivado también.

Kar Shiang Tey
fuente
0

Este problema me sucedió en Windows. Lo resolví deshabilitando la ejecución instantánea. También tengo la misma versión de Android Studio en Linux y funciona bien con la ejecución instantánea habilitada.

Abdallah
fuente
0

Este mismo error sucedió cuando actualicé a Android Studio 3.4.2, actualicé tools-build-gradle a 3.4.2 y el problema desapareció.

snti
fuente
-1

Desactivar Instant Run como solución (Archivo / Configuración / Instant Run) parece eliminar el problema.

Excepción de puntero nulo
fuente