Plug-in do Android para Gradle 8.6.0 (agosto de 2024)

O Plug-in do Android para Gradle 8.6.0 é uma versão principal que inclui vários novos recursos e melhorias.

Compatibilidade

O nível máximo da API com suporte ao Plug-in do Android para Gradle 8.6 é o 35. Confira outras informações de compatibilidade:

Versão mínima Versão padrão Observações
Gradle 8,7 8,7 Para saber mais, consulte Como atualizar o Gradle.
Ferramentas de build do SDK 34.0.0 34.0.0 Instale ou configure as Ferramentas de build do SDK.
NDK N/A 26.1.10909125 Instale ou configure uma versão diferente do NDK.
JDK 17 17 Para saber mais, consulte Como configurar a versão do JDK.

Problemas corrigidos

Plug-in do Android para Gradle 8.6.0

Problemas corrigidos
Plug-in do Android para Gradle
Regressão do AGP 7.0.0-alpha10: falha ao aplicar o plug-in "com.android.internal.library" com a Databinding ativada
Erros ao executar o lint com e sem o UAST do K2
O manifesto não foi gerado para a configuração androidTest da variante.
O AGP 8.4 tenta configurar perfis de inicialização em builds de depuração.
[Koala 2024.1.2 Canary 2] Erro ao executar um módulo de perfil de referência em um APK dividido.
Limpar / remover ProjectInfo
Atualização do kdoc desatualizado para "isIncludeAndroidResources" na DSL do AGP
O lint usa o diretório res sem adicionar dependência de tarefa
AGP 8.5: muitas outras tarefas "mergeDebugResources" são executadas, o que diminui a velocidade dos builds.
A adição de srcs dir pela API Variant não funciona como esperado
Dexer (D8)
Atualização do banco de dados da API para o Android 15 (nível 35 da API)
java.lang.VerifyError: o verificador rejeitou a classe com.pax.log.LogUtils: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) não foi verificado.
Lint
O lint não chama visitAnnotationUsage para usos de anotações com anotações.
Erro de lint UnknownNullness ao usar anotações de uso de tipo.
[library desugar] O lint mostra um aviso falso positivo de NewApi com a dessugarização ativada
O aviso do lint do Credential Manager está incorreto no Wear.
Lint: SetTextI18n reclama sobre a atribuição de uma string vazia.
Integração com o Lint
As tarefas de lint falham com o build incluído.
Redutor (R8)
[r8 8.5]A fusão de classes horizontal do R8 causa um erro de verificação no Android 5 ao desativar o modelagem de API.
Uma versão do Wear OS criada com o Plug-in do Gradle 8.4.0/8.5.0 pode causar java.lang.IllegalAccessError.
O R8 substitui implicitamente uma cláusula de membro vazia por uma correspondência de ()
[r8 8.5] A fusão de classes verticais causa NPE de execução
Erro de processamento do R8 possivelmente devido ao operador de deslocamento para a direita
O R8 (AGP 8.5.0+) falha com o erro "Reescrita inesperada do item: ... para dois itens distintos:...".
O arquivo dex gerado pelo R8 mostra "Não foi possível encontrar o main estático(String[]) em "Teste" quando executado
Comportamento diferente entre programas empacotados pelo R8 e pelo D8
NullPointer do R8 após atualizar para o Kotlin 2.0.

Plug-in do Android para Gradle 8.6.1

Problemas corrigidos
Dexer (D8)
A tarefa/transformação dexada gera conteúdo de classes.dex não determinístico.
Redutor (R8)
R8 8.5.x StackOverflowError em SimpleInliningConstraintAnalysis
Tarefa :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: não é possível invocar "com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()".