Plug-in Android per Gradle 8.9.0 (marzo 2025)

Il plug-in Android per Gradle 8.9.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.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 creazione dell'SDK.
NDK N/D 27.0.12077973 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.9.0

Problemi risolti
Plug-in Android per Gradle
Fornire un messaggio di errore pratico quando l'attività di configurazione di GMD non riesce a causa di spazio su disco insufficiente
Il plug-in com.android.settings non riconosce targetSdk
Errore non utile "compileSdkVersion is not specified. Aggiungilo a build.gradle"
Manca "Clean build" nel menu Build
Forse lasciare che il supporto Kotlin integrato di AGP aggiunga automaticamente la dipendenza dalla libreria standard Kotlin
Aggiorna shouldConfigureKotlinPlatformAttribute per gestire il supporto Kotlin integrato
Aggiungi la sintassi di Kotlin Gradle nel messaggio di errore per `checkTestedAppObfuscationRelease`
Errore della libreria unificata quando la dipendenza non risolta potrebbe essere migliorata
Le proprietà di sistema di gradle.properties non vengono trasmesse ai worker Gradle R8 in processi separati
Imposta BuiltArtifact.outputFile come tipo di file
Se non fornisci lo spazio dei nomi nella libreria unita, non viene visualizzato un buon messaggio di errore
Le opzioni di lint in AGP 7.1.0-alpha08 non consentono stdout
Plug-in Android per Gradle: le varianti devono esporre i nomi dei set di origine
La cache di configurazione è sensibile all'impostazione della variabile di ambiente TERM
AndroidComponentsExtension.addSourceSetConfigurations non funziona quando le statistiche sono abilitate
Script di inizializzazione "C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle" riga: 162
AndroidComponentsExtension.addSourceSetConfigurations non funziona quando le statistiche sono abilitate
Dexer (D8)
java.lang.VerifyError: Verifier rejected class: [0x430] copy1 v2<-v264 type=Undefined cat=3
Pelucchi
Arresti anomali di Lint con i controlli Gradle Lint
L'analisi tramite lint non riesce con InstantiationException senza messaggio di eccezione nello stacktrace di lint
Controllo lint di falsi positivi android.permission.SCHEDULE_EXACT_ALARM concesso solo alle app di sistema
Il controllo StringFormatInvalid deve essere applicato al metodo stringResource di Compose
L'annotazione RequiresFeature non funziona per i file Kotlin
kotlin android.os.Handler removeCallbacks Runnable
Errore di lint WrongConstant nella definizione anziché nell'utilizzo della costante tramite shift
Linter WrongConstant visualizzato due volte
Eccezione di runtime sotto l'API 26 con API Java nio non supportata (senza errore lint)
Lint impedisce l'utilizzo di RequiresApi anche su un metodo helper privato nel test
La modalità K2 genera l'avviso RestrictedApi quando si utilizza .hasRoute(Route::class) in Android Studio
Lint suggerisce di sostituire @RequiresExtension nel test con @SdkSuppress, che non supporta le estensioni dell'SDK
Lint segnala erroneamente un layout nidificato non necessario quando un FrameLayout viene utilizzato con fitSystemWindows per racchiudere un RelativeLayout secondario che richiede un padding personalizzato.
La regola di analisi CoarseFineLocation non tiene conto di un attributo maxSdkVersion
AppLinkSplitToWebAndCustom è UnknownIssue in lint 8.7.3
Controllo lint Arresto anomalo 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 creazione 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 ridotto con R8 incluso in AGP 8.10.0-alpha04

Plug-in Android per Gradle 8.9.1

Problemi risolti
Dexer (D8)
Backporting di android.os.Build.VERSION_CODES_FULL errato per Baklava
Shrinker (R8)
Impossibile generare l'APK firmato dopo l'aggiornamento ad AGP 8.9.0
L'analisi della proprietà di scrittura prima della lettura nei siti di allocazione genera un errore durante la creazione del file di classe
Problema relativo a Java SPI nel riduttore 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 cast sicuro nell'inizializzazione della classe
Impossibile richiamare com.android.tools.r8.internal.H5.x()