Plug-in Android per Gradle 8.9.0 (marzo 2025)

Android Gradle Plugin 8.9.0 è una release principale che include una serie di nuove funzionalità e miglioramenti.

Compatibilità

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

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

Problemi risolti

Plug-in Android per Gradle 8.9.0

Problemi risolti
Plug-in Android per Gradle
Fornire un messaggio di errore utile quando l'attività di configurazione di GMD non va a buon fine a causa di spazio su disco insufficiente
Il plug-in com.android.settings non riconosce targetSdk
Errore non utile: "compileSdkVersion non è specificato. Aggiungilo a build.gradle"
Manca "Compilazione pulita" nel menu Compilazione
Forse consentire al supporto Kotlin integrato di AGP di aggiungere automaticamente la dipendenza da kotlin stdlib
Aggiorna shouldConfigureKotlinPlatformAttribute per gestire il supporto di Kotlin integrato
Fornisci la sintassi di gradle kotlin nel messaggio di errore per "checkTestedAppObfuscationRelease"
È possibile migliorare l'errore della libreria fusa quando la dipendenza non è risolta
Le proprietà di sistema da gradle.properties non vengono passate ai worker Gradle R8 in processi separati
Imposta BuiltArtifact.outputFile come tipo di file
Se non viene fornito lo spazio dei nomi nella libreria fusa, non viene visualizzato un messaggio di errore corretto
Le opzioni lint in AGP 7.1.0-alpha08 non consentono l'output standard
Plug-in Android per Gradle: le varianti devono esporre i nomi degli insiemi di origine
La cache di configurazione è fragile all'impostazione della variabile di ambiente TERM
AndroidComponentsExtension.addSourceSetConfigurations non funziona quando le statistiche sono attivate
Script di inizializzazione riga "C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle": 162
AndroidComponentsExtension.addSourceSetConfigurations non funziona quando le statistiche sono attivate
Dexer (D8)
java.lang.VerifyError: Verifier rejected class: [0x430] copy1 v2<-v264 type=Undefined cat=3
Lint
Lint si arresta in modo anomalo con i controlli gradle di Lint
Lint non riesce con InstantiationException senza messaggio di eccezione nello stacktrace di lint
Controllo lint falso positivo: android.permission.SCHEDULE_EXACT_ALARM è concesso solo alle app di sistema
Il controllo StringFormatInvalid deve essere applicato al metodo Compose stringResource
L'annotazione RequiresFeature non funziona per i file Kotlin
kotlin android.os.Handler removeCallbacks Runnable
Errore lint WrongConstant sulla definizione anziché sull'utilizzo della costante con shift
L'errore lint WrongConstant viene visualizzato due volte
Eccezione di runtime al di sotto dell'API 26 con API Java nio non supportata (senza errori lint)
Lint impedisce l'utilizzo di RequiresApi anche nel metodo di assistenza privato nel test
La modalità K2 genera un avviso RestrictedApi quando viene utilizzato .hasRoute(Route::class) in Android Studio
Lint suggerisce di sostituire @RequiresExtension nel test con @SdkSuppress, che non supporta le estensioni SDK
Lint segnala erroneamente un layout nidificato non necessario quando un FrameLayout viene utilizzato con fitSystemWindows per avvolgere un RelativeLayout secondario che richiede spaziatura personalizzata.
La regola di lint CoarseFineLocation non tiene conto di un attributo maxSdkVersion
AppLinkSplitToWebAndCustom è UnknownIssue in lint 8.7.3
Arresto anomalo del controllo Lint di StringEscapeDetector su "\\ "
Avviso lint errato per l'annotazione "@Parcelize" sulle interfacce sigillate
AS 2024.3.1.4 si blocca a intermittenza durante la modifica dei testi Kotlin.
Integrazione di lint
lintVitalRelease non viene eseguito automaticamente durante la compilazione dell'app bundle
Shrinker (R8)
Gson Proguard non funziona correttamente dopo l'upgrade ad AGP 8.8
java.lang.VerifyError: Verifier rejected class
Leanback si arresta in modo anomalo quando viene minimizzato con R8 incluso in AGP 8.10.0-alpha04

Plug-in Android per Gradle 8.9.1

Problemi risolti
Dexer (D8)
Il backporting di android.os.Build.VERSION_CODES_FULL non è corretto per Baklava
Shrinker (R8)
Impossibile generare APK firmato dopo l'aggiornamento ad AGP 8.9.0
L'analisi della proprietà scritta prima della lettura nei siti di allocazione genera un errore durante la generazione del file class
Problema relativo a Java SPI nello shrinker R8 delle versioni 8.6.*, 8.7.*, 8.8.0

Plug-in Android per Gradle 8.9.2

Problemi risolti
Shrinker (R8)
Problema di riduzione delle risorse in AGP 8.9 che causa la mancanza di risorse nei moduli delle funzionalità dinamiche
ClassCastException da un trasferimento sicuro nell'inizializzazione della classe
Impossibile richiamare com.android.tools.r8.internal.H5.x()