Android Studio 3.1 "Ejecutar" no compila código

87

Cuando intento instalar una aplicación, hay dos posibilidades:

  1. Instalar APK existente desde la carpeta de compilación cuando ejecuto el app
  2. Instalar APK después de realizar clean build

Para APK existente en la carpeta de compilación, la aplicación simplemente funciona bien. Pero cuando limpio el proyecto usando Build-> Clean Project, y luego trato de ejecutar el app(es decir, instalar la aplicación en mi emulador o dispositivo físico), me muestra un error:

El archivo APK /Users/MyApplicationName/app/build/outputs/apk/app-debug.apk no existe en el disco.

NOTA: Este comportamiento ocurre solo cuando limpio el proyecto y no cuando ya tengo un APK de aplicación prediseñado en mi carpeta de compilación

Me he referido a: El archivo APK no existe en el disco, pero mi punto es que, cuando normalmente ejecutamos la aplicación después de limpiar el proyecto, nunca necesitamos crear una compilación, si el APK no existe en la carpeta de compilación , genera e instala automáticamente el último.

Cosas que he probado:

  1. Ejecutar la aplicación cuando el archivo APK existe en la carpeta de compilación (funciona perfectamente bien)
  2. Ejecutar Clean Project-> Ejecutar la aplicación (se espera que el proyecto se compile y la aplicación se instale, ¡pero muestra el error mencionado anteriormente!)
  3. Mismo proceso de limpieza y ejecución de la aplicación después de hacer Invalidate Caches/Restart
Sneh Pandya
fuente
3
Build -> Clean Project->Rebuild Project
IntelliJ Amiya
@IntelliJAmiya exactamente como dijiste, pero el punto aquí es que cuando reconstruyo el proyecto, seguramente funciona, pero ¿no debería generar el APK y funcionar de la misma manera si ejecuto la aplicación?
Sneh Pandya
Consulte este enlace para obtener la respuesta: stackoverflow.com/a/49508278/3806413
0xAliHn

Respuestas:

151

Tengo una solución para tu problema. ¡Espero eso ayude!

También confirmado por Android Studio en Twitter : https://twitter.com/androidstudio/status/981914632892960768

1) Edite la configuración de su aplicación como se muestra a continuación.

ingrese la descripción de la imagen aquí

2) Aquí puede ver la configuración de su aplicación como se muestra a continuación.

ingrese la descripción de la imagen aquí

3) Aquí falta el atributo make compatible con Gradle antes de iniciar la configuración. Puedes ver aquí.

ingrese la descripción de la imagen aquí

4) Agregue este atributo Make compatible con Gradle de esta manera. Haga clic en el icono + y seleccione Marca compatible con Gradle como se ve en esta pantalla.

ingrese la descripción de la imagen aquí

5) Puede agregar esto sin escribir ninguna tarea, simplemente presione el botón OK y la tarea se agregará y ahora debería verse así. Ahora aplique los cambios y ejecute su aplicación.

ingrese la descripción de la imagen aquí

Espero que resuelva este antiguo problema de instalación de apk en la construcción limpia en el nuevo problema de Android Studio 3.1.

Nota: este problema se resuelve en el nuevo Android Studio 3.1.1 versión estable de .

Codificación feliz !!

Sagar Kacha
fuente
1
Parece que si cambia su código y ejecuta la aplicación, no está construyendo la aplicación, solo está ejecutando el código anterior. Esta solución funcionó para mí.
Vicky
NO FUNCIONA: El apagado finalizó en 0ms Error al generar dependencias divididas APK com.android.ide.common.process.ProcessException: No se pudo ejecutar aapt en com.android.builder.core.AndroidBuilder.processResources (AndroidBuilder.java:809) en com .android.builder.core.AndroidBuilder.processResources (AndroidBuilder.java:797) en com.android.build.gradle.internal.transforms.InstantRunSplitApkBuilder.generateSplitApkResourcesAp (InstantRunSplitApkBuilder.java:373)
android51130
@ android51130 Me está funcionando. ¿Puedes comprobar la configuración de otros gradle de tu proyecto? Creo que eso sería un problema.
Sagar Kacha
@ android51130 Sí, exactamente. Actualmente, en mi configuración, la ejecución instantánea está desactivada. Entonces esta solución funciona para mí.
Sagar Kacha
1
Tuve este problema en la última compilación de AS 4.2 Canary durante mucho tiempo. Esto solucionó ese problema, gracias.
muthuraj
3

El archivo APK /Users/MyApplicationName/app/build/outputs/apk/app-debug.apk no existe en el disco.

Puede ser un error. Debes cambiar la configuración.

Deberías abrir el Run/Debug Configurations dialog& seleccionarRun > Edit Configurations

Asegúrese de que Gradle-aware Makeesté agregado en TaskList o no. De lo contrario, haga clic +y seleccione de las opciones.

ingrese la descripción de la imagen aquí

Nota

Si recibes

El apagado finalizó en 0ms Error al generar dependencias divididas APK com.android.ide.common.process.ProcessException: No se pudo ejecutar aapt en com.android.builder.core.AndroidBuilder.processResources (AndroidBuilder.java:809) en com.android. builder.core.AndroidBuilder.processResources (AndroidBuilder.java:797) en com.android.build.gradle.internal.transforms.InstantRunSplitApkBuilder.generateSplitApkResourcesAp (InstantRunSplitApkBuilder.java:373)

Deberías desmarcar INSTANT RUN.

Archivo - Configuración - Compilación, ejecución, implementación - Ejecución instantánea y desmarque Habilitar ejecución instantánea .

IntelliJ Amiya
fuente
1
Sí, funcionará en la reconstrucción porque la configuración ya está configurada con ejecución instantánea. Pero no funcionará en una combinación limpia de proyectos de construcción y ejecución.
Sagar Kacha
1
@SaguKacha De hecho.
IntelliJ Amiya
NO FUNCIONA: El apagado finalizó en 0ms Error al generar dependencias divididas APK com.android.ide.common.process.ProcessException: No se pudo ejecutar aapt en com.android.builder.core.AndroidBuilder.processResources (AndroidBuilder.java:809) en com .android.builder.core.AndroidBuilder.processResources (AndroidBuilder.java:797) en com.android.build.gradle.internal.transforms.InstantRunSplitApkBuilder.generateSplitApkResourcesAp (InstantRunSplitApkBuilder.java:373)
android51130
@ android51130 ¿Cuál es tu buildToolsVersion ??
IntelliJ Amiya
@IntelliJAmiya 26.0.2
android51130
2

limpia tu proyecto y vuelve a ejecutar

Si no funciona entonces

  • Paso 1 Cierre su proyecto.
  • Paso 2 Vaya a la carpeta de su proyecto y elimine toda la carpeta de compilación.
  • Paso 3 ejecuta tu proyecto.
Vishal Sojitra
fuente
1
También intenté cerrar el proyecto, cerrar Android Studio y realizar invalidar cachés / reiniciar pero no tuve suerte, después de limpiar la aplicación, siempre muestra el error y, extrañamente, si el proyecto está construido, siempre ejecuta el mismo APK que está en la carpeta de compilación sin actualizándose con cualquier cambio.
Sneh Pandya
¿Intentaste el paso 2? vaya a la carpeta de su proyecto y elimine toda la carpeta de compilación con la carpeta de compilación del módulo.
Vishal Sojitra
Sí, también eliminé la carpeta de compilación, ¡nada funciona!
Sneh Pandya
Instan deseable correr y hacer todo de nuevo.
Vishal Sojitra
obtuviste una solución?
Vishal Sojitra
0

Este problema se ha solucionado con la versión de Android Studio 3.1.1 (abril de 2018). Actualice su estudio de Android a 3.1.1.

Aquí hay una explicación que vuelve a calificar los detalles del problema, la causa y la solución:

En algunos casos, cuando se creó un proyecto en Android Studio 3.0 was opened for the first time in Android Studio 3.1, the Gradle-aware Make task was removed from the Before launch area in Run/Debug Configurations.El resultado fue que los proyectos no se compilaron cuando se hizo clic en el botón Ejecutar o Depurar, lo que a su vez provocó fallas como la implementación de APK incorrectos y bloqueos al usar Instant Run.

Para resolver este problema, Android Studio 3.1.1 adds the Gradle-aware Make task to the run configuration for projects that are missing this entry.esta modificación se produce después de la primera sincronización de Gradle cuando se carga el proyecto.

Notas de la versión oficial: https://developer.android.com/studio/releases/index.html#3-1-0

0xAliHn
fuente