APIs Java 11 e mais recentes disponíveis por simplificação com a especificação nio

O Android Studio inclui suporte ao uso de diversas APIs Java 11 e versões mais recentes sem exigir um nível mínimo de API para o app. Isso significa que, se você usar uma API introduzida no Android 13 (nível 33 da API), o código também vai funcionar em todas as versões anteriores. A maioria das APIs introduzidas no Android ao longo dos anos pode ser usada no Android 13. Com um processo chamado simplificação da API, o compilador DEX (D8) permite incluir mais APIs de linguagem padrão em apps com suporte a versões mais antigas do Android.

A simplificação de APIs com suporte para Java 11 tem três variações:

  • A versão mínima inclui apenas o pacote java.util.function e classes de substituição para algumas coleções simultâneas de framework do Android que têm problemas conhecidos em dispositivos antigos.
  • A versão padrão é efetivamente um upgrade da simplificação da API Java 8 atualizada para Java 11. Ela inclui os pacotes java.time e java.util.stream, além de tudo o que a versão mínima contém.
  • A versão nio inclui o pacote java.nio, além de tudo que há na versão padrão.

A tabela pesquisável a seguir mostra quais bibliotecas Java 11 e versões mais recentes estão disponíveis quando você usa a versão atualizada do Plug-in do Android para Gradle com a dependência coreLibraryDesugaring definida como com.android.tools:desugar_jdk_libs_nio:2.0.1. Consulte Simplificação da API para saber mais. Defina essa propriedade nos arquivos build.gradle ou build.gradle.kts.