Android Studio include il supporto per l'utilizzo di una serie di API Java 11 e versioni successive senza richiedere un livello API minimo per la tua app. Ciò significa che se usi un'API introdotta in Android 13 (livello API 33) il codice funziona anche su tutte le versioni precedenti. La maggior parte delle API introdotte in Android nel corso degli anni è supportata su Android 13. Tramite un processo chiamato desugaring delle API, il compilatore DEX (D8) consente di includere più API di linguaggio standard nelle app che supportano le versioni precedenti di Android.
Il ritiro delle API di supporto Java 11 è disponibile in tre versioni:
- La versione minima include solo il pacchetto
java.util.functione le classi di sostituzione per alcune raccolte simultanee di framework Android che presentano problemi noti sui dispositivi precedenti. - La versione predefinita è una versione aggiornata dell'API Java 8 che annulla la versione aggiornata a Java 11. Include i pacchetti
java.timeejava.util.streamin aggiunta a tutto ciò che è incluso nella versione minima. - La versione nio include il pacchetto
java.nio, oltre a tutti i contenuti della versione predefinita.
La seguente tabella disponibile per la ricerca mostra quali librerie Java 11 e versioni successive sono disponibili quando utilizzi l'ultima versione del plug-in Android per Gradle con la dipendenza coreLibraryDesugaring impostata su com.android.tools:desugar_jdk_libs:2.0.1 (per ulteriori informazioni, consulta la pagina relativa al desugaring delle API). Imposta questa proprietà nel file build.gradle o
build.gradle.kts.
| Pacchetto + |
|---|