Plug-in Android per Gradle 7.2.0 (maggio 2022)
Il plug-in Android per Gradle 7.2.0 è una release principale che include una serie di nuove funzionalità e miglioramenti.
Questo aggiornamento secondario corrisponde alla release di Android Studio Chipmunk Patch 2 e include le seguenti correzioni di bug:
- Problema n. 232438924: AndroidGradlePlugin versione 7.2 interrompe l'API di trasformazione quando viene utilizzata insieme all'API ASM
- Problema n. 231037948: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
Questo aggiornamento secondario corrisponde alla release di Android Studio Chipmunk Patch 1 e include le seguenti correzioni di bug:
- Problema n. 230361284: bundletool non crea correttamente il pacchetto dei profili di base
Per visualizzare le altre correzioni di bug incluse in questa release, consulta le note di rilascio di Android Studio Chipmunk Patch 1.
Compatibilità
| Versione minima | Versione predefinita | Note | |
|---|---|---|---|
| Gradle | 7.3.3 | 7.3.3 | Per saperne di più, consulta la sezione Aggiornare Gradle. |
| Strumenti di build dell'SDK | 30.0.3 | 30.0.3 | Installa o configura gli strumenti di compilazione dell'SDK. |
| NDK | N/A | 21.4.7075529 | Installa o configura una versione diversa dell'NDK. |
| JDK | 11 | 11 | Per saperne di più, consulta la sezione Impostare la versione del JDK. |
Avviso e controllo di Jetifier in Build Analyzer
Build Analyzer ora mostra un avviso se il file
gradle.properties del progetto include
android.enableJetifier=true. Questo flag è stato introdotto in una
versione precedente di Android Studio per abilitare AndroidX per le librerie che non
lo supportano in modo nativo. Tuttavia, l'ecosistema delle librerie è passato per lo più al
supporto nativo di AndroidX e il flag Jetifier probabilmente non è più necessario per
il tuo progetto. Inoltre, il flag può comportare un rallentamento delle prestazioni di build. Se
visualizzi questo avviso, puoi eseguire un controllo in Build Analyzer per verificare se
il flag può essere rimosso.
Supporto per gli ambienti di test
A partire da Android Studio Chipmunk Beta 1, Android Studio supporta sia gli ambienti di test Android e Java. Per ulteriori informazioni sulla funzionalità degli ambienti di test e su come utilizzarla in un progetto Java, consulta la guida di Gradle sull'utilizzo degli ambienti di test{:.external} .
Per abilitare gli ambienti di test nel modulo della libreria Android, aggiungi quanto segue al
file a livello di libreria build.gradle:
android {
testFixtures {
enable true
// enable testFixtures's android resources (disabled by default)
// androidResources true
}
}Per impostazione predefinita, la pubblicazione della libreria pubblica anche l'AAR degli ambienti di test con
la libreria principale. Il file di metadati del modulo Gradle conterrà le informazioni necessarie a
Gradle per utilizzare l'artefatto corretto quando viene richiesto il
testFixtures componente.
Per disattivare la pubblicazione dell'AAR degli ambienti di test di una libreria nella variante di release,
aggiungi quanto segue al file build.gradle a livello di libreria:
afterEvaluate {
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}Per utilizzare l'AAR degli ambienti di test di una libreria Android pubblicata, puoi utilizzare
il metodo helper di Gradle testFixtures().
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}Per impostazione predefinita, Lint analizzerà le origini degli ambienti di test. Puoi configurare Lint in modo che ignori le origini degli ambienti di test nel seguente modo:
android {
lint {
ignoreTestFixturesSources true
}
}Le radici dei contenuti duplicati non sono supportate
A partire da AGP 7.2, non puoi più condividere la stessa directory di origine in più set di origini. Ad esempio, non puoi utilizzare le stesse origini di test sia per i test unitari sia per i test di strumentazione. Per saperne di più, consulta Modificare le configurazioni dei set di origini predefiniti.