Plug-in do Android para Gradle 8.7.0 (outubro de 2024)

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

Compatibilidade

O nível máximo da API compatível com o plug-in do Android Gradle 8.7 é o 35. Outras informações de compatibilidade:

Versão mínima Versão padrão Observações
"Gradle" 8.9 8.9 "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 27.0.12077973 "Instale ou configure uma versão diferente do NDK."
JDK 17 17 "Para saber mais, consulte Como configurar a versão do JDK."

Mudança de comportamento do lint

A partir do Plug-in do Android para Gradle 8.7.0-alpha08, se houver um LintError ao executar o lint usando o Gradle, a tarefa de análise do lint vai gerar uma exceção. Essa mudança impede que erros raros sejam armazenados em cache no cache de build.

Infelizmente, essa mudança interrompe builds de projetos com instâncias LintError genuínas nos arquivos de valor de referência do lint. A mensagem de erro contém informações sobre quais verificações do lint estão causando o problema. Em alguns casos, atualizar a dependência da biblioteca correspondente pode resolver o problema. Caso contrário, você pode desativar a verificação de lint problemática até que o autor da biblioteca corrija o problema.

Problemas corrigidos

Plug-in do Android para Gradle 8.7.0

Problemas corrigidos
Plug-in do Android para Gradle
O AGP precisa declarar que oferece suporte à API 35, que está prestes a ser lançada.
AGP 8.5: muitas outras tarefas "mergeDebugResources" são executadas, o que deixa os builds mais lentos.
Defina o NDK 27 como o NDK padrão no AGP.
O AGP precisa declarar que oferece suporte à API 35, que está prestes a ser lançada.
O AGP precisa declarar que oferece suporte à API 35, que está prestes a ser lançada.
Falha ao executar o lint do Android com NoSuchFileException
BuildType#initWith copia o bloco de pós-processamento, mas a configuração do ProGuard não é aplicada.
Não é possível fazer a mesclagem para tags foregroundServiceType
Falha ao executar o lint do Android com NoSuchFileException
Lint
O Lint precisa verificar objetos inválidos usados como ViewGroups
"android:host is missing" para URIs com host nulo
Incompatibilidade do KtAnalysisSessionProvider com verificações de lint introduzidas na versão 8.7.0-alpha04
"Falso positivo" WrongConstant ao usar PackageManager.ResolveInfoFlags.of com Kotlin

Plug-in do Android para Gradle 8.7.1

Problemas corrigidos
Plug-in do Android para Gradle
Os documentos do AGP têm muitos TBDs
Lint
AGP 8.6.1: regressão - falha do lint WrongConstant ao usar [Int].toLong() em uma @LongDef no Kotlin
Erro de lint "É necessário especificar pelo menos um host" ao definir o esquema de filtro de intent http ou https

Plug-in do Android para Gradle 8.7.2

Problemas corrigidos
Lint
AGP 8.7.0: falso positivo de lint RestrictedApi em NavOptionsBuilder.popUpTo
Redutor (R8)
[R8 8.6.27] Implementação do método substituída por "throw null"
Os arquivos padrão do ProGuard do Android mostram um aviso quando usados com a versão atual do R8
O MissingStartupProfileItemsDiagnostic falha no cliente Gradle com um erro de falta de memória se a mensagem for muito grande.

Plug-in do Android para Gradle 8.7.3

Problemas corrigidos
Lint
Muitos avisos de método da API de análise ausentes ao executar o lint
Falso positivo na verificação de lint. A permissão android.permission.SCHEDULE_EXACT_ALARM só é concedida a apps do sistema.