Complemento de Android para Gradle 8.6.0 (agosto de 2024)

El complemento de Android para Gradle 8.6.0 es una versión importante que incluye una variedad de nuevas funciones y mejoras.

Compatibilidad

El nivel de API máximo que admite el complemento de Android para Gradle 8.6 es el nivel de API 35. A continuación, se incluye otra información sobre la compatibilidad:

Versión mínima Versión predeterminada Notas
Gradle 8.7 8.7 Para obtener más información, consulta cómo actualizar Gradle.
SDK Build Tools 34.0.0 34.0.0 Instala o configura SDK Build Tools.
NDK N/A 26.1.10909125 Instala o configura una versión diferente del NDK.
JDK 17 17 Para obtener más información, consulta cómo configurar la versión de JDK.

Errores corregidos

Complemento de Android para Gradle 8.6.1

Errores corregidos
Dexer (D8)
La tarea o transformación de conversión a dex genera contenido de classes.dex no determinístico.
Reductor (R8)
StackOverflowError de R8 8.5.x en SimpleInliningConstraintAnalysis
Task :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: No se puede invocar "com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()"

Complemento de Android para Gradle 8.6.0

Errores corregidos
Complemento de Android para Gradle
Regresión de AGP 7.0.0-alpha10: No se pudo aplicar el complemento "com.android.internal.library” cuando la vinculación de datos estaba habilitada.
Errores cuando se ejecuta lint con y sin K2 UAST
No se genera el manifiesto para la configuración de androidTest de la variante
AGP 8.4 intenta configurar perfiles de inicio en compilaciones de depuración
[Koala 2024.1.2 Canary 2] Error al ejecutar un módulo de perfil de Baseline en un APK dividido
Limpia o quita ProjectInfo
Se actualizó el kdoc desactualizado para "isIncludeAndroidResources" en el DSL del AGP.
Lint usa el directorio res sin agregar una dependencia de tarea
AGP 8.5: Se ejecutan muchas más tareas "mergeDebugResources", lo que ralentiza las compilaciones
Agregar el directorio srcs a través de la API de Variant no funciona como se espera
Dexer (D8)
Se actualizó la base de datos de la API a Android 15 (nivel de API 35).
java.lang.VerifyError: Verifier rejected class com.pax.log.LogUtils: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) failed to verify
Lint
Lint no llama a visitAnnotationUsage para el uso de anotaciones con anotaciones
Se produce el error de lint UnknownNullness cuando se usan anotaciones de uso de tipo.
[Anulación de sintaxis de biblioteca] Lint muestra advertencias de NewApi que son falsos positivos con la expansión de sintaxis habilitada
La advertencia de lint del Administrador de credenciales es incorrecta en Wear
Lint: SetTextI18n muestra un mensaje de error cuando se asigna una cadena vacía.
Integración de lint
Las tareas de lint fallan con la compilación incluida
Reductor (R8)
[r8 8.5]La combinación de clases horizontal de r8 provoca un error de verificación en Android 5 cuando se inhabilita el modelado de APIs
Una versión de Wear OS compilada con el complemento de Gradle 8.4.0/8.5.0 puede causar un error java.lang.IllegalAccessError
R8 reemplaza de forma implícita una cláusula de miembro vacía por una coincidencia de ().
[r8 8.5] La combinación vertical de clases provoca una NPE en el tiempo de ejecución
Error de procesamiento de R8 posiblemente debido al operador de desplazamiento a la derecha
R8 (AGP 8.5.0 y versiones posteriores) falla con el error "Unexpected rewriting of item: ... to two distinct items:..."
El archivo dex generado por R8 muestra "Unable to find static main(String[]) in 'Test'" cuando se ejecuta
Diferencias de comportamiento entre los programas empaquetados por R8 y D8
R8 NullPointer después de actualizar a Kotlin 2.0