Plug-in Android per Gradle 8.6.0 (agosto 2024)

Il plug-in Android per Gradle 8.6.0 è una release principale che include una serie di nuove funzionalità e miglioramenti.

Compatibilità

Il livello API massimo supportato dal plug-in Android Gradle 8.6 è il livello API 35. Ecco altre informazioni sulla compatibilità:

Versione minima Versione predefinita Note
Gradle 8.7 8.7 Per scoprire di più, consulta la sezione Aggiornare Gradle.
Strumenti di compilazione SDK 34.0.0 34.0.0 Installa o configura gli strumenti di creazione dell'SDK.
NDK N/D 26.1.10909125 Installa o configura una versione diversa dell'NDK.
JDK 17 17 Per saperne di più, vedi Impostare la versione di JDK.

Problemi risolti

Plug-in Android per Gradle 8.6.0

Problemi risolti
Plug-in Android per Gradle
Regressione AGP 7.0.0-alpha10: impossibile applicare il plug-in "com.android.internal.library" quando è abilitato il data binding
Errori durante l'esecuzione di lint con e senza K2 UAST
Manifest non generato per la configurazione androidTest della variante
AGP 8.4 tenta di configurare i profili di avvio sulle build di debug
[Koala 2024.1.2 Canary 2] Errore durante l'esecuzione di un modulo di profilo di base su un APK diviso
Pulizia / rimozione di ProjectInfo
Aggiorna la documentazione KDoc obsoleta per "isIncludeAndroidResources" in AGP DSL
Lint utilizza la directory delle risorse senza aggiungere la dipendenza dell'attività
AGP 8.5: vengono eseguite molte più attività "mergeDebugResources", il che rallenta le build
L'aggiunta della directory srcs tramite l'API Variant non funziona come previsto
Dexer (D8)
Aggiorna il database API ad Android 15 (livello 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
Pelucchi
Lint non chiama visitAnnotationUsage per gli utilizzi delle annotazioni annotate
Errore di lint UnknownNullness durante l'utilizzo delle annotazioni di utilizzo del tipo
[library desugar] lint mostra avvisi di falsi positivi NewApi con la rimozione della zucchero sintattico abilitata
Avviso Lint di Credential Manager errato su Wear
Lint: SetTextI18n segnala un problema relativo all'assegnazione di una stringa vuota.
Integrazione di Lint
Le attività di lint non riescono con la build inclusa
Shrinker (R8)
[r8 8.5]L'unione orizzontale delle classi r8 causa un errore di verifica su Android 5 quando la modellazione dell'API è disattivata
Una release di Wear OS creata con il plug-in Gradle 8.4.0/8.5.0 potrebbe causare java.lang.IllegalAccessError
R8 sostituisce implicitamente una clausola membro vuota con una corrispondenza di ()
[r8 8.5] vertical class merger causing runtime NPE
Errore di elaborazione R8 probabilmente dovuto all'operatore di spostamento a destra
R8 (AGP 8.5.0+) non riesce con l'errore "Unexpected rewriting of item: ... to two distinct items:..."
Il file dex generato da R8 mostra "Unable to find static main(String[]) in 'Test'" (Impossibile trovare static main(String[]) in "Test") quando viene eseguito
Comportamento diverso tra i programmi compressi da R8 e D8
R8 NullPointer dopo l'aggiornamento a Kotlin 2.0

Plug-in Android per Gradle 8.6.1

Problemi risolti
Dexer (D8)
L'attività/la trasformazione Dexing genera contenuti non deterministici di classes.dex
Shrinker (R8)
R8 8.5.x StackOverflowError in SimpleInliningConstraintAnalysis
Task :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: Cannot invoke "com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()"