Paquetes de bibliotecas de compatibilidad

Nota: Con el lanzamiento de la biblioteca de compatibilidad 28.0.0, las bibliotecas empaquetadas con android.support dejaron de estar disponibles y se reemplazaron por bibliotecas de Jetpack con versiones individuales empaquetadas como androidx. La versión inicial 1.0.0 de las bibliotecas de Jetpack proporciona paridad con la biblioteca de compatibilidad 28.0.0 y brinda un punto de partida para la migración al nuevo paquete androidx.

Las bibliotecas existentes empaquetadas con android.support seguirán funcionando. Sin embargo, no recibirán actualizaciones posteriores a la 28.0.0 y no serán compatibles con las nuevas bibliotecas de Jetpack. Los artefactos históricos (aquellos con versiones 27 y anteriores, y empaquetados como android.support) seguirán estando disponibles en Google Maven. Todos los artefactos nuevos se empaquetarán como androidx y requerirán una migración de android.support a androidx.

Recomendamos usar las bibliotecas androidx en todos los proyectos nuevos. También puedes migrar los proyectos existentes para asegurarte de que sigan recibiendo correcciones de errores y otras mejoras de la biblioteca.

La biblioteca de compatibilidad de Android contiene varios paquetes de biblioteca que se pueden incluir en tu aplicación. Cada una de estas bibliotecas admite un rango específico de versiones de la plataforma de Android y un conjunto de funciones.

Para usar cualquiera de las siguientes bibliotecas, debes descargar los archivos de la biblioteca en tu instalación del SDK de Android. Para completar este paso, sigue las instrucciones de descarga de las bibliotecas de compatibilidad en Configuración de la biblioteca de compatibilidad. Debes realizar pasos adicionales para incluir una biblioteca de compatibilidad específica en tu aplicación. Consulta el final de cada sección de la biblioteca a continuación para obtener información importante sobre cómo incluir la biblioteca en tu aplicación.

Nota: La versión mínima del SDK para todos los paquetes de biblioteca de compatibilidad es la API nivel 14. Algunos paquetes requieren un nivel de API superior, como se indica a continuación.

Bibliotecas de compatibilidad v4

Estas bibliotecas incluyen el conjunto de APIs más grande en comparación con otras bibliotecas, incluida la compatibilidad con componentes de la aplicación, funciones de la interfaz de usuario, accesibilidad, manejo de datos, conectividad de red y utilidades de programación.

Para obtener información completa y detallada sobre las clases y los métodos proporcionados por las bibliotecas de compatibilidad v4, consulta el paquete android.support.v4 en la referencia de la API.

Nota:Antes de la revisión de la biblioteca de compatibilidad 24.2.0, había una única biblioteca de compatibilidad v4. Esa biblioteca se dividió en varios módulos para mejorar la eficiencia. Para ofrecer retrocompatibilidad, si incluyes support-v4 en tu secuencia de comandos de Gradle, tu app incluirá todos los módulos v4. Sin embargo, para reducir el tamaño de la app, te recomendamos que solo enumeres los módulos específicos que necesita tu app.

Biblioteca compat v4

Proporciona wrappers de compatibilidad para varias APIs de framework, como Context.obtainDrawable() y View.performAccessibilityAction().

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-compat:28.0.0

Biblioteca core-utils v4

Proporciona una serie de clases de utilidad, como AsyncTaskLoader y PermissionChecker.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-core-utils:28.0.0

Biblioteca core-ui v4

Implementa una variedad de componentes relacionados con la IU, como ViewPager, NestedScrollView y ExploreByTouchHelper.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-core-ui:28.0.0

Biblioteca media-compat v4

Ofrece portabilidad a versiones anteriores del marco de trabajo de contenido multimedia, incluidas MediaBrowser y MediaSession.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-media-compat:28.0.0

Biblioteca fragment v4

Agrega compatibilidad con el encapsulamiento de la interfaz de usuario y la funcionalidad con fragmentos, lo que permite que las aplicaciones proporcionen diseños que se ajustan entre dispositivos de pantalla pequeña y grande. Este módulo tiene dependencias en compat, core-utils, core-ui y media-compat.

Nota: La biblioteca de compatibilidad v13 proporciona una clase FragmentCompat. La clase Fragment v4 es una clase independiente que proporciona correcciones de errores que se agregaron en versiones posteriores de la plataforma, mientras que la clase FragmentCompat v13 proporciona correcciones de compatibilidad para la implementación de framework de la clase Fragment.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-fragment:28.0.0

Biblioteca de compatibilidad multidex

Esta biblioteca proporciona compatibilidad para compilar apps con múltiples archivos Dalvik Executable (DEX). Se requieren apps que hagan referencia a más de 65,536 métodos para usar configuraciones multidex. Si quieres obtener más información para usar multidex, consulta Cómo compilar apps con más de 64,000 métodos.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:multidex:1.0.0

Bibliotecas de compatibilidad v7

Estas bibliotecas proporcionan conjuntos de funciones específicas y se pueden incluir en tu aplicación de manera independiente.

Biblioteca appcompat v7, que forma parte de Android Jetpack.

Nota: La biblioteca appcompat migró a la biblioteca de AndroidX, que es un componente de Android Jetpack. Mira cómo funciona en la app de demo de Sunflower.

Esta biblioteca agrega compatibilidad con el patrón de diseño de la interfaz de usuario de la barra de acciones. Esta biblioteca incluye compatibilidad con implementaciones de interfaz de usuario de Material Design.

Nota: Esta biblioteca depende de la biblioteca de compatibilidad v4.

Estas son algunas de las clases clave incluidas en la biblioteca appcompat v7:

  • ActionBar: Proporciona una implementación del patrón de interfaz de usuario de la barra de acciones. Para obtener más información sobre el uso de la barra de acciones, consulta la guía para desarrolladores sobre la barra de acciones.
  • AppCompatActivity: Agrega una clase de actividad de aplicación que se puede usar como clase base para actividades que utilizan la implementación de la barra de acciones de la biblioteca de compatibilidad.
  • AppCompatDialog: Agrega una clase de diálogo que se puede usar como una clase base para los diálogos con tema de AppCompat.
  • ShareActionProvider: Agrega compatibilidad para una acción estandarizada de uso compartido (como correo electrónico o publicación en aplicaciones sociales) que se puede incluir en una barra de acciones.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:appcompat-v7:28.0.0

Biblioteca cardview v7

Esta biblioteca agrega compatibilidad con el widget CardView, que te permite mostrar información dentro de tarjetas que tienen una apariencia coherente en cualquier app. Estas tarjetas son útiles para las implementaciones de Material Design y se usan ampliamente en diseños de apps para TV.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:cardview-v7:28.0.0

Biblioteca gridlayout v7

Después de descargar las bibliotecas de compatibilidad de Android, esta biblioteca agrega compatibilidad con la clase GridLayout, que te permite organizar los elementos de la interfaz de usuario mediante una cuadrícula de celdas rectangulares. Para obtener información detallada acerca de las APIs de la biblioteca gridlayout v7, consulta el paquete android.support.v7.widget en la referencia de API.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:gridlayout-v7:28.0.0

Biblioteca mediarouter v7

Esta biblioteca proporciona MediaRouter, MediaRouteProvider y clases multimedia relacionadas que admiten Google Cast.

En general, las APIs de la biblioteca mediarouter v7 proporcionan un medio para controlar el enrutamiento de canales y transmisiones multimedia desde el dispositivo actual a pantallas, bocinas y otros dispositivos de destino externos. La biblioteca incluye APIs para publicar proveedores de rutas de contenido multimedia específicos de la app, descubrir y seleccionar dispositivos de destino, verificar el estado del contenido multimedia y mucho más. Para obtener información detallada acerca de las APIs de la biblioteca mediarouter de la versión 7, consulta el paquete android.support.v7.media en la referencia de la API.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:mediarouter-v7:28.0.0

Las APIs de la biblioteca mediarouter de la versión 7 que se introdujeron en la biblioteca de compatibilidad r18 están sujetas a cambios en revisiones posteriores de la biblioteca de compatibilidad. En este momento, te recomendamos usar la biblioteca solo en conexión con Google Cast.

Biblioteca palette v7

La biblioteca de compatibilidad palette v7 incluye la clase Palette, que te permite extraer colores destacados de una imagen. Por ejemplo, una app de música podría usar un objeto Palette para extraer los colores principales de la portada de un álbum y usarlos para crear una tarjeta de título de canción que combine con un color.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:palette-v7:28.0.0

Biblioteca recyclerview v7

La biblioteca recyclerview agrega la clase RecyclerView. Esta clase proporciona compatibilidad con el widget RecyclerView, una vista para mostrar de manera eficiente grandes conjuntos de datos proporcionando una ventana limitada de elementos de datos.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:recyclerview-v7:28.0.0

Biblioteca de compatibilidad Preference v7

El paquete preference proporciona APIs para admitir la adición de objetos de preferencia, como CheckBoxPreference y ListPreference, para que los usuarios modifiquen la configuración de la IU.

La biblioteca de preferencias v7 agrega compatibilidad con interfaces, como Preference.OnPreferenceChangeListener y Preference.OnPreferenceClickListener, y con clases, como CheckBoxPreference y ListPreference.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:preference-v7:28.0.0

Biblioteca de compatibilidad v8

Esta biblioteca proporciona conjuntos de funciones específicas y se puede incluir en tu aplicación independientemente de otras bibliotecas.

Biblioteca renderscript v8

Esta biblioteca agrega compatibilidad con el marco de trabajo de procesamiento de RenderScript. Estas API se incluyen en el paquete android.support.v8.renderscript. Debes tener en cuenta que los pasos para incluir estas APIs en tu aplicación son muy diferentes de los de otras APIs de bibliotecas de compatibilidad. Para obtener más información sobre el uso de estas APIs en tu aplicación, consulta la guía para desarrolladores de RenderScript.

Nota: El uso de RenderScript con la biblioteca de compatibilidad es compatible con Android Studio y las compilaciones basadas en Gradle. La biblioteca renderscript se encuentra en la carpeta build-tools/$VERSION/renderscript/.

En el siguiente ejemplo, se muestran las propiedades de la secuencia de comandos de compilación de Gradle para esta biblioteca:

defaultConfig {
    renderscriptTargetApi 18
    renderscriptSupportModeEnabled true
}

Biblioteca de compatibilidad v13

Esta biblioteca agrega compatibilidad con el patrón de interfaz de usuario Fragment con la clase (FragmentCompat) y clases adicionales de compatibilidad de fragmentos. Si deseas obtener más información sobre los fragmentos, consulta la guía para desarrolladores de Fragment. Para obtener información detallada sobre las APIs de la biblioteca de compatibilidad v13, consulta el paquete android.support.v13 en la referencia de la API.

Nota: La biblioteca fragment v4 proporciona una clase Fragment. La clase Fragment v4 es una clase independiente que proporciona correcciones de errores que se agregaron en versiones posteriores de la plataforma, mientras que la clase FragmentCompat v13 proporciona correcciones de compatibilidad para la implementación de framework de la clase Fragment.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-v13:28.0.0

Biblioteca de compatibilidad de preferencias v14

El paquete android.support.v14.preference proporciona APIs para agregar compatibilidad con interfaces de preferencias, como PreferenceFragment.OnPreferenceStartFragmentCallback y PreferenceFragment.OnPreferenceStartScreenCallback, junto con clases, como MultiSelectListPreference y PreferenceFragment. Para obtener información detallada sobre las APIs de la biblioteca de compatibilidad de preferencias v14, consulta el paquete de preferencias en la referencia de la API.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:preference-v14:28.0.0

Biblioteca de compatibilidad de preferencias para TV v17

El paquete android.support.v17.preference proporciona APIs para brindar interfaces de preferencias en dispositivos de TV, incluida la compatibilidad con la interfaz y las clases LeanbackListPreferenceDialogFragment.ViewHolder.OnItemClickListener, como BaseLeanbackPreferenceFragment y LeanbackPreferenceFragment. Para obtener información detallada sobre las APIs de la biblioteca de compatibilidad de preferencias v17, consulta el paquete de preferencias en la referencia de la API.

Este paquete requiere la API nivel 17 o superior. El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

 com.android.support:preference-leanback-v17:28.0.0 

Biblioteca Leanback v17

El paquete android.support.v17.leanback proporciona APIs para admitir la creación de interfaces de usuario en dispositivos de TV. Proporciona una serie de widgets importantes para apps de TV. Entre algunas de las clases notables, se incluyen las siguientes:

Este paquete requiere la API nivel 17 o superior. El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:leanback-v17:28.0.0

Biblioteca Vector Drawable

Proporciona compatibilidad para gráficos vectoriales estáticos.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-vector-drawable:28.0.0

Biblioteca Animated Vector Drawable

Admite gráficos vectoriales animados.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:animated-vector-drawable:28.0.0

Biblioteca de compatibilidad Annotations

El paquete Annotation proporciona APIs para admitir la adición de metadatos de anotación a tus apps.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:support-annotations:28.0.0

Biblioteca de compatibilidad Design

El paquete Design proporciona APIs para admitir la adición de componentes y patrones de Material Design a tus apps.

La biblioteca de compatibilidad de diseño agrega compatibilidad con varios componentes y patrones de material design para que los desarrolladores de apps puedan usarlos, como paneles laterales de navegación, botones de acción flotantes (BAF), barras de notificaciones y pestañas.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:design:28.0.0

Biblioteca de compatibilidad Custom Tabs

El paquete de pestañas personalizadas proporciona APIs para admitir la adición y administración de pestañas personalizadas en tus apps.

La biblioteca de compatibilidad de pestañas personalizadas agrega compatibilidad con varias clases, como el servicio de pestañas personalizadas y la devolución de llamada de pestañas personalizadas.

Este paquete requiere la API nivel 15 o superior. El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:customtabs:28.0.0

Biblioteca de compatibilidad Percent

El paquete Percent proporciona APIs para admitir la adición y administración de dimensiones basadas en porcentajes en tu app.

Nota: A partir de la versión 26.0.0, la biblioteca de compatibilidad Percent dejó de estar disponible. Los clientes de este módulo deben migrar al nuevo widget ConstraintLayout, que se proporciona como un artefacto separado en SDK Manager.

La biblioteca de compatibilidad de porcentaje agrega compatibilidad con la interfaz PercentLayoutHelper.PercentLayoutParams y varias clases, como PercentFrameLayout y PercentRelativeLayout.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:percent:28.0.0

Biblioteca de compatibilidad ExifInterface

Las etiquetas Exif almacenan información como la orientación, la fecha y la hora, la información de la cámara y la ubicación directamente en un archivo JPEG o RAW. La clase ExifInterface desagrupa compatibilidad para leer información Exif de archivos JPEG y sin formato (DNG, CR2, NEF, NRW, ARW, RW2, ORF, PEF, SRW y RAF), y configurar la información Exif en archivos de imagen JPEG.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:exifinterface:28.0.0

Biblioteca de compatibilidad App Recommendation para TV

El paquete de recomendaciones de apps proporciona APIs para admitir la adición de recomendaciones de contenido en tu app que se ejecuta en dispositivos de TV.

La biblioteca de apps agrega compatibilidad con anotaciones, como ContentRecommendation.ContentMaturity y varias clases, como ContentRecommendation y RecommendationExtender.

Este paquete requiere la API nivel 21 o superior. El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:recommendation:28.0.0

Biblioteca de la IU de Wear

Esta biblioteca tiene API que permiten compilar interfaces de usuario para apps de Wear. Las APIs, disponibles en el paquete android.support.wear.widget, reemplazan las APIs correspondientes en la biblioteca de compatibilidad para wearables.

Para obtener más información, consulta Cómo usar la biblioteca de IU de Wear.

El identificador de dependencias de la secuencia de comandos de compilación de Gradle para esta biblioteca es el siguiente:

com.android.support:wear:28.0.0