Java 11+ APIs, die über Entsugaring verfügbar sind

Android Studio unterstützt die Verwendung einiger APIs für Java 11 und höher, ohne dass ein Mindest-API-Level für Ihre App erforderlich ist. Wenn Sie also eine in Android 13 eingeführte API (API-Level 33) verwenden, funktioniert der Code auch in allen vorherigen Versionen. Die meisten APIs, die im Laufe der Jahre auf Android eingeführt wurden, werden auch unter Android 13 unterstützt. Mit dem DEX-Compiler (D8) können Sie über einen Prozess namens API-Entsugaring weitere APIs in der Standardsprache in Anwendungen einbinden, die ältere Android-Versionen unterstützen.

Es gibt drei Varianten des API-Entsugaring mit Java 11:

  • Die Mindestversion enthält nur das java.util.function-Paket und Ersatzklassen für einige gleichzeitige Sammlungen des Android-Frameworks, die auf alten Geräten bekannte Probleme haben.
  • Die Standardversion ist praktisch eine aktualisierte Version des Java 8 API-Entsugarings, das auf Java 11 aktualisiert wurde. Zusätzlich zu allen Elementen in der Minimalversion enthält sie die Pakete java.time und java.util.stream.
  • Die Nio-Version enthält zusätzlich zu allen Inhalten in der Standardversion das Paket java.nio.

Die folgende durchsuchbare Tabelle zeigt, welche Java 11+-Bibliotheken verfügbar sind, wenn Sie die neueste Version des Android-Gradle-Plug-ins mit der Abhängigkeit coreLibraryDesugaring auf com.android.tools:desugar_jdk_libs:2.0.1 verwenden. Weitere Informationen finden Sie unter API-Entsugaring. Legen Sie dieses Attribut in der Datei build.gradle oder build.gradle.kts fest.