El lanzamiento de la nueva versión 2.0 viene en 3 versiones:
- com.android.tools:desugar_jdk_libs_nio:2.0.2 – la versión nio incluye todos los desazúcar disponibles incluyendo el java.nio, java.tiempo, corriente, y funciones API.
- com.android.tools:desugar_jdk_libs:2.0.2 – la versión por defecto incluye desazucarado para el java.tiempo, corriente, y funciones API. Es similar a la eliminación de azúcar de la API de la versión 1.x que ya está disponible, pero se actualizó con las API agregadas hasta Android 13.
- com.android.tools:desugar_jdk_libs_minimal:2.0.2 – la versión mínima incluye sólo el java.util.function paquete y correcciones de errores en colecciones concurrentes. Está diseñado para una sobrecarga mínima de tamaño de código.
Optar por más funciones de eliminación de azúcar tendrá un mayor impacto en el tamaño del código de su aplicación. El mínimo La especificación tiene, como su nombre lo indica, un impacto mínimo en el tamaño del código de la aplicación. El niño especificación tiene el mayor impacto.
El nuevo java.nio API
El nuevo java.nio Las API admitidas en la eliminación de azúcar de API incluyen:
- Todas las clases y APIs en java.nio.archivo como Atributos de archivo básicosmanipulación de archivos o uso de java.nio.file.Path.
- Algunas extensiones de java.nio.canalestales como el Canal de archivo#abierto métodos.
- Algunos métodos de utilidad como Archivo#aRuta.
El siguiente fragmento de código ilustra cómo puede usar ahora el nuevo java.nio API en todos los dispositivos, incluidos los dispositivos que ejecutan Android 7 y versiones anteriores, a través de los métodos de kotlin.io.ruta que dependen de java.nio.file.Archivos. Un archivo temporal se puede crear, escribir en él, leer y sus atributos básicos y su existencia se pueden consultar utilizando el nuevo java.nio API.
import android.util.Log |
// Resulting logcat output. |
Sin embargo, algunas funciones no se pueden emular para dispositivos que ejecutan Android 7 e inferior y, en su lugar, lanzan una instancia de UnsupportedOperationException o volver nulo. Todavía funcionan en dispositivos con Android 8 o superior, por lo que el código existente protegido por una verificación de nivel de API debería funcionar como solía hacerlo. Ver el lista completa de APIs disponibles y las limitaciones conocidas.
El código ha sido ampliamente probado, pero estamos buscando entradas adicionales de los desarrolladores de aplicaciones.
¡Pruebe la nueva versión de API desugaring y háganos saber cómo funcionó para usted!
Para antecedentes adicionales ver la publicación Compatibilidad con las nuevas API del lenguaje Java desde que se introdujo la eliminación de azúcar API.
Java y OpenJDK son marcas comerciales o marcas comerciales registradas de Oracle y/o sus filiales.