android - Causa: buildOutput.apkData no debe ser nulo
android-studio mobile (9)
En mi caso, el proyecto de compilación y lanzamiento con diferentes configuraciones de compilación fue exitoso.
Sin embargo, la generación de apk firmados arroja un error
Cause: buildOutput.apkData must not be null
por otro lado se generó apk y la vista de alternancia de Build Build se imprime
BUILD SUCCESSFUL
.
La instalación manual termina con el mensaje de
App not installed
.
Mi culpa fue usar
compileSdkVersion ''android-P''
y después de cambiar a
compileSdkVersion 28
todo va bien.
Mi aplicación de Android que usa Kotlin está lanzando esta excepción cuando intento Ejecutar ''aplicación'' en el emulador o en mi teléfono celular. Cuando construyo mi proyecto funciona bien, sin errores.
Estoy usando:
- SDK 28 (Android 9.0 (Pie))
- Gradle 5.1.1
- Gradle Plugin 3.5.0-alpha03
- Kotlin 1.3.10
- Java 1.8.0_151
- OSX 10.13.2
org.gradle.internal.exceptions.LocationAwareException: buildOutput.apkData must not be null
at org.gradle.initialization.exception.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:99)
at org.gradle.initialization.exception.DefaultExceptionAnalyser.collectFailures(DefaultExceptionAnalyser.java:65)
at org.gradle.initialization.exception.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:39)
at org.gradle.initialization.exception.StackTraceSanitizingExceptionAnalyser.transform(StackTraceSanitizingExceptionAnalyser.java:29)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:194)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:141)
...
Caused by: java.lang.IllegalStateException: buildOutput.apkData must not be null
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:103)
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:67)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:174)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:691)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:721)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:712)
...
Estaba usando Android Studio 3.5 beta 2 y estaba teniendo exactamente el mismo error pero solo en mi versión de lanzamiento. Después de probar todas las soluciones que encontré, la única forma de compilar de nuevo era volver a Android Studio 3.4.
Esto funciona para mi:
-
eliminar manualmente la carpeta de compilación de su proyecto.
-
en la terminal de Android Studio escriba este comando
si es usuario de windows
./gradlew clean build
si usuario de linux
/app/build/
Haga clic en
Build
->
Clean Project
Luego
Build
->
Make Project
Probado en gradle 3.5.0-alpha3, -alpha5 y 3.4.0 (proyecto gradle)
classpath ''com.android.tools.build:gradle:3.5.0-alpha03''
Parece que limpiar el proyecto puede resolver el problema, pero para mí funcionó así.
Archivo-> sincronizar proyecto con archivos gradle.
También estaba recibiendo este error al intentar "Generar APK firmado" para mi versión de lanzamiento. Intenté todos los métodos anteriores, desafortunadamente ninguno me funcionó.
Lo que funcionó fue generar primero la versión firmada de la aplicación de depuración y luego generar nuevamente la versión de lanzamiento.
No sé qué fue exactamente lo que cambió o cuál fue el problema original, pero funcionó. Espero que te ayude también, porque este error es bastante molesto ...
Actualizándome a Android Studio 3.4.1 me sale el mensaje
Causa: buildOutput.apkData no debe ser nulo
Buscando una respuesta encontré el procedimiento:
Build
->
Clean Project
pero no funcionó, sé que este procedimiento eliminará el contenido en el directorio
/build
pero, en mi opinión, no funciona en todos los casos, así que probé la forma "sin procesar", eliminando el directorio:
gradlew clean build
Luego reconstruí el proyecto y funcionó.
En mi caso, este problema ocurre debido a la actualización de
Android Studio 3.4
.
Paso 1:
Después de actualizar Android Studio
3.4
, debe agregar todas las dependencias que usó en su módulo o biblioteca en su
build.gradle
nivel de
build.gradle
.
Paso 2: Proyecto Limpio (Construir> Proyecto Limpio)
Paso 3: Reconstruir Proyecto (Construir> Reconstruir Proyecto)
Ahora, tu proyecto se compilará perfectamente.