Descripción general de AndroidX

El espacio de nombres androidx incluye las bibliotecas de Android Jetpack. Al igual que la biblioteca de compatibilidad, las bibliotecas en el espacio de nombres de androidx se envían por separado de la plataforma de Android y ofrecen retrocompatibilidad con las versiones de Android.

AndroidX es una mejora significativa respecto de la biblioteca de compatibilidad de Android original Support Library, que ya no se actualiza. Los paquetes de androidx reemplazan por completo la biblioteca de compatibilidad, ya que proporcionan paridad de funciones y bibliotecas nuevas.

Además, AndroidX incluye las siguientes funciones:

  • Todos los paquetes de AndroidX están alojados en un espacio de nombres coherente que comienza con la string androidx. Los paquetes de la biblioteca de compatibilidad se asignaron a los paquetes androidx.* correspondientes. Para ver el mapeo completo de todos los artefactos de compilación y las clases anteriores en las nuevas versiones, consulta la página Refactorización de paquetes.

  • A diferencia de la biblioteca de compatibilidad, los paquetes de androidx se mantienen y actualizan de manera separada. Los paquetes de androidx usan un control semántico de versiones estricto, a partir de la versión 1.0.0. Puedes actualizar las bibliotecas de AndroidX en tu proyecto de forma independiente.

  • La versión 28.0.0 es la última versión de la biblioteca de compatibilidad. No habrá más actualizaciones de la biblioteca de android.support. Todo el desarrollo de funciones nuevas estará en el espacio de nombre de androidx.

Cómo usar bibliotecas de androidx en tu proyecto

El AGP actual admite el uso de las bibliotecas de androidx de forma predeterminada. Consulta cómo migrar a AndroidX para obtener información sobre la migración de un proyecto existente.

En el caso de los proyectos que no se migraron o que tienen dependencias heredadas que no lo hicieron, AGP proporciona las siguientes marcas que se pueden establecer en el archivo gradle.properties de tu proyecto.

  • android.useAndroidX: Es verdadera de forma predeterminada en el Complemento de Android para Gradle 9.0.0 y versiones posteriores, y falsa en versiones anteriores a la 9.0.0. Cuando este parámetro se establece en true, el complemento para Android utiliza la biblioteca de AndroidX adecuada en lugar de una biblioteca de compatibilidad. Se planea quitar la capacidad de establecer esta marca en false en AGP 10.
  • android.enableJetifier: Cuando esta marca se establece en true, el complemento de Android reescribe sus objetos binarios a fin de migrar automáticamente las bibliotecas de terceros existentes para usar las dependencias de AndroidX. La marca es false de forma predeterminada si no se especifica y se planea quitarla en AGP 10, ya que las bibliotecas publicadas generalmente completaron la migración.

Referencia de la API

En la sección de referencia de AndroidX, puedes encontrar todos los paquetes y las clases en el espacio de nombres de androidx.

Recursos adicionales

Puedes obtener más información sobre los componentes en la página principal de Jetpack. Si deseas obtener más información sobre la refactorización de paquetes desde la biblioteca de compatibilidad hacia androidx, consulta la entrada de blog sobre ese tema.