Skip to content

Most visited

Recently visited

navigation

Historial de revisión de la biblioteca de compatibilidad

En esta página se proporciona información detallada sobre las versiones del paquete de bibliotecas de compatibilidad.

Biblioteca de compatibilidad de Android, revisión 24.2.0 (agosto de 2016)

La versión 24.2.0 contiene los siguientes cambios:

Nota: En la versión 24.2.0 se quita la compatibilidad con Android 2.2 (nivel de API 8) y versiones anteriores. Ahora las clases y los métodos que existen solo para ofrecer esas versiones de sistema se marcan como obsoletos y no deben usarse más. Estas clases y estos métodos obsoletos pueden quitarse en una versión futura.

División de la biblioteca de compatibilidad v4

Con esta versión, la biblioteca de compatibilidad v4 se ha dividido en varios módulos más pequeños:

support-compat
Proporciona contenedores de compatibilidad para API de framework nuevas, como Context.getDrawable() y View.performAccessibilityAction().
support-core-utils
Proporciona varias clases de utilidades, como AsyncTaskLoader y PermissionChecker.
support-core-ui
Implementa diferentes componentes relacionados con IU, como ViewPager, NestedScrollView y ExploreByTouchHelper.
support-media-compat
Adapta secciones del framework de medios, como MediaBrowser y MediaSession.
support-fragment
Adapta el framework del fragmento. Este módulo tiene dependencias en support-compat, support-core-utils, support-core-ui, y support-media-compat.

Para la compatibilidad con versiones anteriores, si enumeras support-v4 en tu secuencia de comandos de Gradle, en tu APK se incluirán todos estos módulos. Sin embargo, para reducir el tamaño de APK, te recomendamos simplemente enumerar los módulos específicos que necesite tu app.

Actualizaciones de API

Cambios en los comportamientos

  • Si usas la funcionalidad de día y noche de la biblioteca appcompat, el sistema ahora recreará de modo automático tu actividad cada vez que el modo día y noche cambie (ya sea debido al momento del día o una llamada a AppCompatDelegate.setLocalNightMode()).
  • Snackbar ahora aparece detrás de la barra de navegación si la barra de estado es translúcida.

Biblioteca mediarouter

Los dispositivos bluetooth ya no se mencionan como rutas de medios. Ahora el enrutamiento de audio para dispositivos bluetooth se controla únicamente en el sistema Android.

Desusos

Es posible que las clases y los métodos obsoletos se quiten en una versión futura. Debes realizar una migración para apartarte de estas API cuanto antes.

Correcciones de errores

Los siguientes problemas conocidos se han solucionado con la versión 24.2.0:

  • Asegúrate de que se muestre el indicador SwipeRefreshLayout cuando se llame a setRefreshing(true) antes de que la transmisión de la primera medida (error 77712 del AOSP).
  • Evita que TabLayout fluctúe cuando se cambien páginas (error 180454 del AOSP).
  • Evita ClassNotFoundException cuando ordenes SavedState hasta el nivel de API 11 (error 196430 del AOSP).

Se encuentra disponible una lista completa de correcciones de errores públicos en el seguimiento de problemas del AOSP.

Biblioteca de compatibilidad de Android, revisión 24.1.1 (julio de 2016)

Errores corregidos:

  • Corrige un error en la versión 24.1.0 que afectaba los ID de recursos compartidos entre bibliotecas de compatibilidad. Este error hacía que las apps que dependían de las bibliotecas de compatibilidad con recursos (como design y appcompat) encontraran errores debidos a incompatibilidades de ID de recursos.

Biblioteca de compatibilidad de Android, revisión 24.1.0 (julio de 2016)

Cambios para la biblioteca de compatibilidad v4:

Errores corregidos:

  • TabLayout.setCustomView(null) genera NullPointerException (error 214753 del AOSP).
  • TabLayout resalta de manera incorrecta las etiquetas personalizadas (error 214316 del AOSP).
  • AppCompatTextHelper usa un conjunto de atributos ordenados de manera incorrecta (error 214366 del AOSP).
  • No es posible hacer referencia a VectorDrawable desde el XML del contenedor de elementos de diseño al usar ContextWrapper personalizado (error 214055 del AOSP).
  • ViewDragHelper.saveLastMotion() genera ArrayIndexOutOfBoundsException (error 212945 del AOSP).
  • BottomSheetBehavior se expande hasta la altura del contenido anterior cuando se usa setState(STATE_EXPANDED) (error 213660 del AOSP).
  • CollapsingToolbarLayout no maneja campos secundarios fijados con márgenes superiores o inferiores (error 213001 del AOSP)
  • El título de búsqueda de Leanback no es compatible con la alineación RTL (error 213461 del AOSP).
  • PagerTabStrip desaparece debido a la anotación heredada faltante (error 213359 del AOSP).
  • La vinculación de datos genera NullPointerException cuando se usa un booleano para establecer indicadores condicionales (error 191841 del AOSP).
  • CoordinatorLayout no responde a setFitsSystemWindows() (error 212720 del AOSP).
  • BottomSheetBehavior se bloquea cuando se configura el estado inicial (error 203114 del AOSP).
  • ViewPager omite páginas si el índice de la página es un valor grande (error 211734 del AOSP).
  • BottomSheetBehavior no funciona con diseños dinámicos (error 205226 del AOSP).

Biblioteca de compatibilidad de Android, revisión 24.0.0 (junio de 2016)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó Fragment.commitNow() para una confirmación sincrónica.
  • Se agregó NotificationCompat.MessagingStyle para conversaciones entre varias partes.
  • Se agregaron NotificationManagerCompat.areNotificationsEnabled() y getImportance().
  • MediaSessionCompat ahora refleja la funcionalidad de MediaSession y ya no llama a setMediaButtonReceiver() de manera automática.

Nota: Solo MediaBrowserServiceCompat en la versión 24.0.0 tiene compatibilidad con versiones futuras de Android más allá de la API 24. Si usas versiones previas, realiza una actualización a esta versión para garantizar la compatibilidad.

Cambios para la biblioteca appcompat v7:
  • Se agregó compatibilidad para la referencia a objetos ColorStateList temáticos desde XML.
Cambios para la biblioteca de compatibilidad de diseños:
Cambios para la biblioteca Leanback v17:
  • Se agregó OnboardingFragment para proporcionar un flujo de bienvenida y configuración en la primera ejecución.
Cambios para pestañas personalizadas:
  • Se agregó compatibilidad a fin de proporcionar una jerarquía RemoteViews para la barra de herramientas secundaria.
  • Se agregó CustomTabsClient.connectAndInitialize() para una preparación en una línea.

Biblioteca de compatibilidad de Android, revisión 23.4.0 (mayo de 2016).

Cambios para la biblioteca de compatibilidad v4:
  • Se corrigió un error por el cual los fragmentos se agregaban en el orden equivocado. (Error 206901).
  • Se corrigió un error por el cual la barra de app no se dibujaba después de desplazarse fuera de la pantalla. (Error 178037).
Cambios para la biblioteca appcompat v7:
Cambios para la biblioteca de compatibilidad de diseños:
Cambios para Biblioteca de elementos de diseño vectoriales:

Biblioteca de compatibilidad de Android, revisión 23.3.0 (abril de 2016)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó AppLaunchChecker para contribuir al seguimiento del inicio de tu app por parte del en el pasado. hasStartedFromLauncher() te permite saber si el usuario ha ejecutado tu app desde la pantalla de inicio antes o si se ha iniciado por otros medios (por ejemplo, para ver URL web específicas).
  • Se corrigió una fuga de memoria en MediaBrowserServiceCompat.mConnections. (Error 205220).
  • Se corrigió un error por el cual ViewPager no considera los márgenes de página al cambiar de página. (Error 203816).
  • Fragment.onRequestPermissionsResult() ahora se proporciona a fragmentos secundarios.
Cambios para la biblioteca appcompat v7:
Cambios para la biblioteca mediarouter v7:
Cambios para la biblioteca de preferencia v7:
Cambios para la biblioteca recyclerview v7:
Cambios para la biblioteca de compatibilidad de diseños:

Biblioteca de compatibilidad de Android, revisión 23.2.1 (marzo de 2016)

Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca appcompat v7:
  • Se revirtió la dependencia en recursos vectoriales para que los desarrolladores que usan la biblioteca appcompat no se vieran obligados a usar VectorDrawable y sus indicadores de compilación asociados.
  • Se corrigió un error de compatibilidad en el modo noche y el nivel de API 23. (Error 201910).
  • Se corrigió un error de compatibilidad en SwitchCompat y el nivel de API 7. (Error 201942).
  • Se corrigió un problema en la propagación de valores de configuración en objetos de recursos. (Error 201928).
  • Se corrigió un error de compatibilidad por el cual el botón de cancelación NotificationCompat.MediaStyle se vuelve invisible en el nivel de API 21 y en niveles inferiores. (Error 202156).
  • Se corrigió un bloqueo de compatibilidad en AppCompatSpinner, en el nivel de API 21 y en niveles inferiores. (Error 202246).
  • Se corrigió un problema por el cual el estilo app:textAllCaps = "false" no funcionaba. (Error 202117).
  • Se corrigió un bloqueo al restaurarse SearchView. (Error 201836).
  • Se corrigió una fuga de memoria que se produce cuando al aplicar tonos a recursos de elementos de diseño usando de AppCompat. (Error 202379).
  • Se corrigió un error de KeyEvent en el nivel de API 11 y en niveles inferiores. (Error 202939).
Cambios para la biblioteca cardview v7:
Cambios para la biblioteca recyclerview v7:
  • Se corrigieron errores relacionados con varios métodos de especificaciones de medición. (Error 201856).
  • Se redujo el período de bloqueo en el cual RecyclerView no permite cambios en adaptadores durante el cálculo de un diseño o un desplazamiento. (Error 202046).
  • Se corrigió un bloqueo al llamar a notifyItemChanged() en un elemento que se encuentra fuera de la vista. (Error 202136).
  • Se corrigió un bloqueo que se produce cuando RecyclerView.LayoutManager agrega y quita una vista en la misma pasada de medición. (Error 193958).
Cambios para la biblioteca mediarouter v7:
Cambios para la biblioteca Leanback v17:
  • Se corrigió un error en GridLayout.onAddFocusables() que generaba la selección del elemento incorrecto.
  • Se corrigió un error por el cual desaparecían acciones de GuidedStepFragment después de la contracción de una acción.
Cambios para la biblioteca de compatibilidad de diseños:
  • Se corrigió un bloqueo de TabLayout causado por la agrupación de pestañas. (Error 201827).
  • Se corrigió un error en NavigationView que generaba una selección de color incorrecta. (Error 201951).
  • Se corrigió un error por el cual setBackgroundTintList() no podía cambiar el color de fondo. (Error 201873).
  • Se corrigió un error por el cual AppBarLayout no se desplazaba hasta quedar por completo fuera de vista al usarse con android:fitsSystemWindows = “true”. (Error 201822).
  • Se corrigió un error por el cual BottomSheetDialog no mostraba vistas de contenido corto de manera correcta. (Error 201793).
  • Se corrigió un problema por el cual BottomSheetDialogFragment se movía esporádicamente cuando se cambiaba el contenido interno. (Error 202125).
  • Se corrigió un bloqueo en el enlace del contador de TextInputLayout.
  • Se corrigió un bloqueo que se producía cuando TextInputLayout.getCounterMaxLength() restauraba un estado guardado. (Error 202375).
  • Se corrigió una ClassCastException que se producía al restaurar un elemento CoordinatorLayout usando el estado guardado de una vista que no era un elemento CoordinatorLayout.
Cambios para VectorDrawableCompat:
  • Se corrigió un error por el cual se leía la variable incorrecta para android:tintMode. (Error 201907).

Biblioteca de compatibilidad de Android, revisión 23.2.0 (febrero de 2016)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó MediaBrowserCompat para ofrecer compatibilidad con MediaBrowser y MediaBrowserServiceCompat para ofrecer compatibilidad con MediaBrowserService. Esto resulta útil al conectar un servicio en segundo plano de la app de medios con componentes de IU y realizar la integración con Android Auto y Android Wear, sin necesidad de que el nivel de API sea el 21 o uno superior.
  • Ahora el sistema llama a onActivityResult() para un elemento FragmentActivity anidado.
Cambios para la biblioteca appcompat v7:
  • Se agregó la funcionalidad de modo noche a partir del nivel de API 14. Alternancia entre Material Light y Material Dark Themes según el momento del día o una configuración específica de la app.
    • Los temas nocturnos y diurnos pueden encontrarse aquí: <sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
    • AppCompatDelegate.setDefaultNightMode(); configura el modo predeterminado de la app pasando una de las siguientes constantes:
      • MODE_NIGHT_AUTO
      • MODE_NIGHT_NO
      • MODE_NIGHT_YES
      • MODE_NIGHT_FOLLOW_SYSTEM
    • AppCompatDelegate.setLocalNightMode(): anula la configuración del modo noche para el componente de app local.
    • AppCompatDelegate.getDefaultNightMode(): muestra el modo noche predeterminado.
Cambios para la biblioteca mediarouter v7:
Cambios para la biblioteca de compatibilidad de diseños:
  • Se agregó compatibilidad para hojas inferiores. Un complemento de interacción, BottomSheetBehavior, permite una vista secundaria de un elemento CoordinatorLayout para funcionar como una hoja inferior. La clase base, BottomSheetCallback, proporciona callbacks para controlar eventos de hojas inferiores.
Cambios para la biblioteca de compatibilidad de pestañas personalizadas:
  • Chrome Custom Tabs ahora permite que las apps incluyan una barra inferior con botones de acción además del botón de acción superior existente.
  • CustomTabsIntent.Builder.addToolBarItem(): agrega un botón de acción a una pestaña personalizada. Puedes usar esto para agregar varios botones.
  • CustomTabsSession.setToolBarItem(): actualiza los elementos visuales para elementos de la barra de herramientas. Este método solo podrá aplicarse con éxito si recibe un ID válido y la sesión del navegador se encuentra en primer plano.
Se agregó una biblioteca de compatibilidad de VectorDrawable:
  • Clases agregadas:
    • VectorDrawableCompat
    • AnimatedVectorDrawableCompat
  • Agrega compatibilidad con recursos de VectorDrawable a apps que a partir del nivel de API 7. Los recursos de AnimatedVectorDrawable también se admiten a partir del nivel de API 11. Los recursos vectoriales pueden ser considerablemente más pequeños que los recursos de imagen y ayudan a reducir el tamaño de la app reduciendo la cantidad de recursos que se requieren para admitir pantallas de varios dispositivos.
  • Ahora esta biblioteca es una dependencia de la biblioteca AppCompat v7, lo cual permite que los desarrolladores y AppCompat usen de manera sencilla elementos de diseño vectoriales. Para usar VectorDrawableCompat dentro de un elemento ImageButton o ImageView, usa el atributo XML app:srcCompat o el método setImageResource().
  • Para seguir haciendo referencia a ID de atributos a partir del nivel de API 20, agrega el siguiente indicador appt a tu archivo build,gradle:
    • Si realizas compilaciones con el complemento de Android para Gradle 1.5.0 o versiones anteriores, agrega lo siguiente a tu archivo build.gradle:
    • android {
        defaultConfig {
          // Stops the Gradle’s automatic rasterization of vectors
          generatedDensities = []
        }
         // Flag that tells aapt to keep the attribute ids
        aaptOptions {
          additionalParameters "--no-version-vectors"
        }
      }
      
    • Si realizas compilaciones con el complemento de Android para Gradle 2.0.0 o versiones anteriores, agrega lo siguiente a tu archivo build.gradle:
    • android {
        defaultConfig {
          vectorDrawables.useSupportLibrary = true
        }
      }
      
Cambios para la biblioteca Leanback v17:
  • Se agregaron capacidades nuevas a GuidedStepFragment, un componente que guía a los usuarios para tomar una o varias decisiones:
    • Se agregaron acciones de botones a GuidedAction:
      • GuidedStepFragment.setButtonActions(): establece una lista de botones de GuidedAction que el usuario puede seleccionar desde la vista Actions.
    • Los campos de descripción ahora son editables:
      • GuidedAction.Builder.descriptionEditable(): cuando se pasa true, configura la descripción de la acción para que sea editable.
      • GuidedAction.getEditDescription(): muestra la descripción editable como un elemento CharSequence.
    • Se agregaron listas desplegables de subacciones:
      • GuidedAction.setSubActions(): configura una lista GuidedAction como un menú desplegable de subacciones.
  • Se agregó el widget GuidedDatePickerAction para la funcionalidad de DatePicker:
    • La fecha se selecciona usando columnas de año, mes y día, y tiene un rango personalizado.
    • GuidedDatePickerAction.Builder: clase de generador para el objeto GuidedDatePickerAction.
    • GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat): fija el formato de fecha deseado pasando el elemento String de tres caracteres correspondiente; p. ej., “YMD” o “MDY”. Como alternativa, usa el atributo XML datePickerFormat.
Cambios para la biblioteca recyclerview v7:
  • RecyclerView ahora tiene una función de inclusión llamada AutoMeasure que permite a RecyclerView.LayoutManager agrupar contenido o manejar varias especificaciones de mediciones proporcionadas por el campo primario del elemento RecyclerView de manera sencilla. Es compatible con todas las capacidades de animación existentes del RecyclerView.
    • Si tienes un elemento RecyclerView.LayoutManager personalizado, llama a setAutoMeasureEnabled(true) para comenzar a usar la nueva AutoMeasure API. Todos los objetos RecyclerView.LayoutManager integrados habilitan la medición automática de forma predeterminada.
    • RecyclerView.LayoutManager ya no ignora algunas de las configuraciones de RecyclerView.LayoutParams; por ejemplo, MATCH_PARENT en la dirección de desplazamiento.

      Nota: Estas restricciones elevadas pueden generar un comportamiento inesperado en tus diseños. Asegúrate de especificar los parámetros de diseño correctos.

  • Cuando se actualiza un elemento RecyclerView.ViewHolder con información de carga, DefaultItemAnimator ahora inhabilita las animaciones de cambios.
  • Ahora puedes modificar la velocidad de escape de ItemTouchHelper para controlar la sensibilidad de deslizamiento de control. Para facilitar o dificultar más el deslizamiento, anula getSwipeEscapeVelocity(float defaultValue) y modifica defaultValue.

Biblioteca de compatibilidad de Android, revisión 23.1.1 (noviembre de 2015)

Cambios para la biblioteca recyclerview v7:
  • Se corrigió un bloqueo que se produce al realizar una acción de deslizar para descartar, proporcionada por la clase de utilidad ItemTouchHelper, y luego agregar un elemento. (Error 190500).
Cambios para la biblioteca de preferencia v7:
Cambios para la biblioteca de compatibilidad de Leanback v17:
  • Se corrigieron varios errores internos en esta biblioteca.
Cambios para la biblioteca de compatibilidad de diseños:
  • Se agregó el método getHeaderView a la clase NavigationView.
  • Se corrigió un error de fondo transparente para un objeto FloatingActionButton en dispositivos con Android 4.0 (nivel de API 15) y versiones anteriores. (Error 183315).

Biblioteca de compatibilidad de Android, revisión 23.1.0 (octubre de 2015)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó compatibilidad con la interfaz OnScrollChangedListener al widget NestedScrollView. Te permite recibir callbacks cuando las posiciones de desplazamiento de X o Y cambian.
  • Se agregó una clase MediaButtonReceiver para enviar controles de reproducción recibidos a un servicio que administra la clase MediaSessionCompat. La clase MediaSessionCompat tiene un constructor que puede encontrar de manera automática un receptor de botones de medios en el manifiesto. El receptor de botones de medios es un componente esencial para el manejo de controles de reproducción desde controles de hardware o tecnología bluetooth.
Cambios para la biblioteca appcompat v7:
  • Se agregaron widgets Seekbar y ImageButton de material design.
  • Se actualizó el widget ImageView para admitir la función de matiz.
  • Se actualizó el aspecto del widget SwitchCompat.
Cambios para la biblioteca mediarouter v7:
  • Se agregaron las siguientes funciones a la clase MediaRouteChooserDialog:
    • Muestra una página de carga mientras se descubren proveedores de enrutamiento de medios.
    • Incluye un ícono de tipo de dispositivo para una identificación más sencilla de dispositivos.
    • Ordena las rutas según la frecuencia de uso de la app actual.
    • Admite el modo de paisaje.
  • Se agregaron las siguientes funciones a la clase MediaRouteControllerDialog:
    • Reconoce la proyección de pantalla y proporciona una descripción correspondiente.
    • Admite diferentes tamaños de portadas de álbumes y relaciones aspecto, y carga la portada de manera asincrónica.
    • Selecciona de manera automática el color del contenido según el color principal de la app.
    • Ajusta el diseño del diálogo según el espacio disponible en pantalla en el dispositivo.
    • Admite el modo de paisaje.
Cambios para la biblioteca palette v7:
  • Se agregó el método setRegion() para admitir la extracción de color desde una sección especifica de un objeto Bitmap.
Cambios para la biblioteca recyclerview v7:
  • Se agregó una API de animación mejorada a la clase ItemAnimator para proporcionar mejores personalizaciones:
    • Las animaciones de cambios ya no aplican dos copias del objeto ViewHolder, lo cual permite animaciones de contenido de elementos. Además, el objeto ItemAnimator determina si volverá a usar el mismo objeto ViewHolder o creará uno nuevo.
    • La nueva API de registro de información proporciona a la clase ItemAnimator la flexibilidad necesaria para recopilar datos en el punto correcto del ciclo de vida de diseño. Esta información luego se pasa a los callbacks de animación.
  • Se proporcionó un plan de transición sencillo para este cambio de API compatible con versiones anteriores:
    • Si previamente extendiste la clase ItemAnimator, podrás cambiar tu clase base a SimpleItemAnimator y tu código funcionará como antes. La clase SimpleItemAnimator proporciona la API anterior agrupando la API nueva.
    • Se quitaron algunos métodos de la clase ItemAnimator. El siguiente código dejará de compilarse:
    • recyclerView.getItemAnimator().setSupportsChangeAnimations(false)

      Puedes reemplazarlo por:

      ItemAnimator animator = recyclerView.getItemAnimator();
      if (animator instanceof SimpleItemAnimator) {
         ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false);
      }
                 
Cambios para la biblioteca de compatibilidad de preferencias v7, v14 y v17:
  • Se quitaron las API para controlar los diálogos EditText.
Cambios para la biblioteca de compatibilidad de Leanback v17:
  • Se agregó una versión de la clase GuidedStepFragment para la biblioteca de compatibilidad (extiende android.support.v4.app.Fragment) y se mejoraron las animaciones y transiciones.
  • Se actualizó la clase GuidedStepFragment para que se pueda disponer sobre el contenido existente.
  • Se agregó la capacidad para comentar diferentes clases de acciones de completar búsquedas en la clase SearchFragment.
  • Se agregó la compatibilidad con transiciones de deslizamiento escalonado a la clase VerticalGridFragment.
Cambios para la biblioteca de compatibilidad de diseños:
  • Se agregó compatibilidad con el recuento de caracteres al widget TextInputLayout.
  • Se agregó compatibilidad con el ajuste de bordes a la clase AppBarLayout añadiendo la constante SCROLL_FLAG_SNAP. Al finalizar el desplazamiento, si la vista es solo puede verse parcialmente se ajusta y se desplaza hasta su borde más cercano.
  • Se agregó compatibilidad con vistas personalizadas a la clase NavigationView usando el atributo app:actionLayout o el método MenuItemCompat.setActionView().
Cambios para la biblioteca de compatibilidad de pestañas personalizadas:
  • Se agregó el método enableUrlBarHiding() a la clase CustomTabsIntent. Le permite al cliente determinar, de manera personalizada, si la barra de la URL debe ocultarse de manera automática al realizarse el desplazamiento hacia abajo.
  • Se agregó el método setActionButton() a la clase CustomTabsSession. Permite al cliente cambiar el ícono de un botón de acción personalizado en una pestaña personalizada previamente iniciada.
  • Se agregaron las constantes TAB_SHOWN y TAB_HIDDEN como eventos nuevos para el método onNavigationEvent de la clase CustomTabsCallback.

Biblioteca de compatibilidad de Android, revisión 23.0.1 (septiembre de 2015)

Cambios para la biblioteca de compatibilidad de preferencias v7 y v14:
  • Se agregaron el diseño de material design y archivos de estilo. (Error 183376).
Cambios para la biblioteca appcompat v7:
  • Se corrigieron errores de bloqueo de la clase Fragment limitando el uso de capas de hardware de Android 4.1 (nivel de API 16) y versiones posteriores. (Error 183896).
  • Se corrigió un error por el cual los botones de hardware no funcionaban cuando en una actividad se configuraba la clase Toolbar para que funcionara como ActionBar usando el método setSupportActionBar(). (Error 183334).
  • Se actualizó la clase AppCompatDialogFragment para que deje de generar el error Windows feature must be requested before adding content. (Error 183186).
Cambios para la biblioteca de compatibilidad de diseños:
  • Se corrigió la clase AppBarLayout para que se realice la ilustración de manera correcta después de la rotación. (Error 183109).
  • Se corrigió la clase TabLayout para que su comportamiento sea correcto cuando el usuario haga clic después de un deslizamiento. (Error 183123).
Cambios para la biblioteca de compatibilidad de pestañas personalizadas:
  • Se redujo el valor minSdkVersion de 16 a 15 para garantizar compatibilidad con versiones.
  • Se agregó un método para generar un elemento CustomTabsSessionToken a partir de un intent.

Biblioteca de compatibilidad de Android, revisión 22.2.1 (julio de 2015)

Cambios para la biblioteca de compatibilidad de diseños:
  • Se agregaron los métodos hide() y show() a la clase FloatingActionButton para la activación programática de animaciones.
  • Se agregó la constante LENGTH_INDEFINITE a la clase Snackbar para mostrar un snackbar hasta que se descarte o se muestre otro snackbar. Además, se agregaron los métodos setActionTextColor(int) y setActionTextColor(ColorStateList).
  • Se agregó el método getSelectedTabPosition() a la clase TabLayout para recuperar la etiqueta actualmente seleccionada.
  • Se proporcionó una API completamente fluida para la clase NotificationCompat.MediaStyle aplicada al encadenamiento de métodos.
  • Se agregaron métodos prácticos a RecyclerView para la inserción de elementos por lotes.

Para hallar una lista completa con los cambios de la biblioteca de compatibilidad, consulta el informe de diferencias de la API de la biblioteca de compatibilidad.

Biblioteca de compatibilidad de Android, revisión 22.2.0 (mayo de 2015).

Se agregó la biblioteca de compatibilidad de diseño:
  • Se agregó TextInputLayout para mostrar texto de errores y sugerencias EditText como etiquetas flotantes.
  • Se agregó FloatingActionButton para implementar una acción principal en tu interfaz como un botón de acción flotante y así admitir tamaños predeterminados o pequeños.
  • Se agregó Snackbar para proporcionar comentarios ligeros con una acción opcional en un snackbar animado.
  • Se agregó TabLayout para implementar etiquetas fijas y desplazables además de una integración sencilla con ViewPager.
  • Se agregó NavigationView para implementar contenidos del panel lateral de navegación, incluida la capacidad de agrandar elementos de menú a través de un recurso de menú.
  • Se agregó CoordinatorLayout, un diseño multipropósito empleado para crear dependencias entre vistas del mismo nivel y permitir reacciones de desplazamiento sencillas entre componentes a través de CoordinatorLayout.Behavior. Varios de los componentes de la biblioteca de diseño son elementos secundarios de un elemento CoordinatorLayout.
  • Se agregó AppBarLayout, un contenedor para un elemento Toolbar y otras vistas (como TabLayout) a fin de ofrecer reacción ante eventos de desplazamiento al haber movimientos hacia afuera de la pantalla, visibilidad ante un desplazamiento descendente, o bien contracción o expansión antes del desplazamiento hacia afuera o adentro de la pantalla.
  • Se agregó CollapsingToolbarLayout para controlar la contracción de un elemento Toolbar. Una herramienta se puede contraer de la siguiente manera: fijando componentes en la parte superior de la pantalla mientras se contrae, introduciendo desplazamiento parallax de componentes, como ImageView o agregando un color de velo de contenido cuando la vista se contrae parcialmente.
Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca appcompat v7:

Para hallar una lista completa con los cambios de la biblioteca de compatibilidad, consulta el informe de diferencias de la API de la biblioteca de compatibilidad.

Biblioteca de compatibilidad de Android, revisión 22.1.0 (abril de 2015)

Cambios para la biblioteca de anotaciones:
  • Se agregó la biblioteca de anotaciones a fin de proporcionar compatibilidad con inspecciones de códigos mejorados. Las anotaciones se agregan como etiquetas de metadatos que se adjuntan a variables, parámetros y valores de retorno para inspeccionar valores de retorno de métodos, parámetros pasados, y variables y campos locales.
Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca appcompat v7:
Cambios para la biblioteca Leanback v17:
Cambios para la biblioteca recyclerview v7:
Cambios para la biblioteca renderscript v8:

Biblioteca de compatibilidad de Android, revisión 22 (marzo de 2015)

Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca appcompat v7:
Cambios para la biblioteca Leanback v17:
  • Se agregaron los métodos getRecycledPoolSize() y setRecycledPoolSize() para permitir tamaños de grupos reciclados y personalizados.
  • Se agregó el atributo WRAP_CONTENT a la configuración de ancho de diseño a fin de admitir contenido agrupado para íconos de títulos.
  • Se definió R.transition en XML para mejorar las actualizaciones de transición.
  • Se habilitó la compatibilidad con diseños de derecha a izquierda.
  • Se agregó compatibilidad con eventos de teclas de medios de reproducción y pausa a la clase PlaybackOverlayFragment.
  • Se agregaron transiciones de retorno e ingreso a las clases BrowseFragment y DetailsFragment.
  • Se agregó el método replace() para reemplazar elementos en una matriz de adaptadores de un objeto.
Cambios para la biblioteca mediarouter v7:
Cambios para la biblioteca recyclerview v7:

Biblioteca de compatibilidad de Android, revisión 21.0.3 (diciembre de 2014)

Cambios para la biblioteca de compatibilidad v4:

Biblioteca de compatibilidad de Android, revisión 21.0.2 (noviembre de 2014)

Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca appcompat v7:
  • Se agregó el constructor PopupMenu para admitir menús nuevos emergentes.
  • Se agregó compatibilidad para una descripción del ícono de contracción en la clase Toolbar.
  • Se actualizó el widget SearchView para admitir la visualización de commitIcon.
  • Se eliminó el atributo buttonGravity de la clase Toolbar.
Cambios para la biblioteca cardview v7:
Cambios para la biblioteca recyclerview v7:
Cambios para la biblioteca Leanback v17:
  • Se agregó compatibilidad para generar fragmentos de código v4.
  • Se cambió el color secundario de texto en CardView.

Biblioteca de compatibilidad de Android, revisión 21.0.1 (noviembre de 2014)

Se agregó una biblioteca de compatibilidad MultiDex para admitir varios archivos Dalvik Executable (DEX) y así ofrecer esta compatibilidad con versiones anteriores a Android 5.0.

Biblioteca de compatibilidad de Android, revisión 21 (octubre de 2014)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó compatibilidad para las transiciones Fragment en dispositivos con Android 5.0 (nivel de API 21). Ten en cuenta que las transiciones no tienen efecto en dispositivos con Android 4.4 o versiones anteriores.
  • Se agregó DocumentFile para facilitar la transición desde File mientras se trabaja con árboles de documentos. Sin embargo, esta clase demanda más procesamiento en comparación con la API DocumentsContract de la plataforma agregada en Android 4.4 (nivel de API 19). Por lo tanto, debes realizar un cambio y usar DocumentsContract al usar Android 4.4 y versiones posteriores.
Cambios para la biblioteca appcompat v7:
  • Se agregó compatibilidad para las interfaces de usuario de material design.
  • Se agregó Toolbar, que generaliza la funcionalidad de ActionBar para usarse dentro de diseños de apps.
  • Se actualizó ActionBarDrawerToggle, que contiene la animación de menú a flecha.
  • Se actualizaron los widgets comunes de interfaz de usuario para permitir matices a través de los atributos de temas al usar dispositivos con versiones de Android inferiores a la 5.0
  • Se agregó SwitchCompat, un backport del widget Switch que se agregó en Android 4.0 (nivel de API 14).
Nueva biblioteca cardview v7:
  • Se agregó el widget CardView, que proporciona una implementación de material design compatible para mostrar elementos de datos.
Nueva biblioteca recyclerview v7:
  • Se agregó el widget RecyclerView que proporciona una vista flexible de la lista para proporcionar una ventana limitada en un conjunto grande de datos.
Nueva biblioteca de paleta v7:
  • Se agregó la clase Palette, que permite extraer colores prominentes de una imagen.
Nueva biblioteca Leanback v7:

Biblioteca de compatibilidad de Android, revisión 20 (julio de 2014)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó compatibilidad de notificaciones extendidas para Android Wear en NotificationCompat.WearableExtender, lo cual te permite especificar funciones específicas de wearables en tus notificaciones.
  • Se agregó NotificationCompat.Action.WearableExtender, que permite agregar las acciones en notificaciones de wearables.
  • Se agregó NotificationManagerCompat, que te permite emitir notificaciones que admiten de manera adecuada funciones de wearables.
  • Se agregó RemoteInput; permite que un dispositivo portátil reciba una entrada de voz desde una notificación que aparece en un dispositivo wearable.
  • Se mejoró el manejo de la respuesta táctil en SwipeRefreshLayout.

Biblioteca de compatibilidad de Android, revisión 19.1.0 (marzo de 2014)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó la clase SwipeRefreshLayout, que permite a los usuarios actualizar los contenidos de una vista con un gesto de deslizamiento vertical.
  • Se corrigieron los errores de accesibilidad con los paneles laterales de navegación.
Cambios para la biblioteca appcompat v7:
  • Se corrigieron los errores de segundo plano de la barra de acciones.

Biblioteca de compatibilidad de Android, revisión 19.0.1 (diciembre de 2013)

Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca mediarouter v7:
Cambios para la biblioteca renderscript v8:
  • Se corrigió la propagación de errores para la capa de aplicación de código thunk de RenderScript.

Biblioteca de compatibilidad de Android, revisión 19 (octubre de 2013)

Cambios para la biblioteca de compatibilidad v4:
Cambios para la biblioteca mediarouter v7:
  • Se agregó compatibilidad con la puesta en cola de reproducciones de medios, la configuración de valores de encabezado HTTP y la duración de reproducción de medios.
  • Se agregaron acciones de secciones explícitas de inicio, obtención y finalización para manejar de manera explícita las sesiones de reproducción de medios con un router de medios.

Biblioteca de compatibilidad de Android, revisión 18 (julio de 2013)

Cambios para la biblioteca de compatibilidad v4:
  • Interfaz de usuario
    • Se agregó BidiFormatter para administrar strings de texto en las que se combinan textos con orientación de derecha a izquierda e izquierda a derecha.
    • Se modificó ViewPager para manejar mejor los casos en los cuales el paginador tiene un ancho medido de cero en el procesamiento inicial de diseño.
    • Se modificaron DrawerLayout y SlidingPaneLayout a fin de evitar excepciones para la medición durante la edición del código de proyecto.
  • Accesibilidad
  • Medios
    • Se agregó una clase auxiliar TransportMediator para administrar el control de transporte de medios; por ejemplo, la reproducción, la pausa, la omisión y otras acciones de medios.
    • Se agregó DisplayManagerCompat a fin de administrar la salida de visualización para una o más pantallas de dispositivos.
  • Otros cambios
    • Se agregó una clase auxiliar WakefulBroadcastReceiver para implementar un patrón común de detección de un evento de reactivación de dispositivo y transferir el trabajo a un elemento Service mientras se garantiza que el dispositivo no se vuelva a suspender antes de que se complete la entrega.
    • Se agregaron dos API nuevas, commitContentChanged() y rollbackContentChanged(), a AsyncTaskLoader a fin de contribuir al manejo de actualizaciones en segundo plano para cambios de datos que se cancelen posteriormente.
Nueva biblioteca appcompat v7:
  • Se agregó ActionBar para permitir la implementación de design pattern de la interfaz de usuario de la barra de acciones en Android 2.1 (nivel de API 7) y versiones posteriores. Para el uso de esta clase debes implementar tu actividad extendiendo la clase nueva ActionBarActivity.
Nueva biblioteca mediarouter v7:

Se agregó una biblioteca mediarouter nueva que proporciona compatibilidad con la Preview de Google Cast para desarrolladores. Las API de la biblioteca mediarouter v7 proporcionan un medio de control del enrutamiento de canales y flujos de medios desde el dispositivo actual hasta las pantallas externas, los altavoces y otros dispositivos de destino con compatibilidad hasta Android 2.1 (nivel de API 7). Para obtener más información, consulta la biblioteca mediarouter v7.

Las API de la biblioteca mediarouter v7 introducidas en la biblioteca de compatibilidad r18 están sujetas a cambios en revisiones posteriores de la biblioteca de compatibilidad. En este momento, recomendamos usar la biblioteca únicamente en relación con la Preview de Google Cast para desarrolladores.

Biblioteca de compatibilidad de Android, revisión 13 (mayo de 2013)

Cambios para la biblioteca de compatibilidad v4:
Nueva biblioteca gridlayout v7:
  • Se agregó GridLayout para proporcionar compatibilidad para el objeto de diseño GridLayout.
  • Se agregó android.support.v7.widget.Space que puede usarse para crear áreas en blanco dentro de un objeto de diseño GridLayout.

Biblioteca de compatibilidad de Android, revisión 12 (febrero de 2013)

Cambios para la biblioteca de compatibilidad v4:
  • Se mejoró el comportamiento de interacción para ViewPager.
  • Se corrigió un error por el cual ViewPager podía seleccionar la página equivocada.
  • Se corrigió el uso del método removeView() durante el diseño para ViewPager.
  • Se corrigió un error de SearchViewCompat por el cual el uso del botón de retorno para descarte no borra el texto de la búsqueda. Esta corrección solo se aplica a niveles de API de host a partir del 14.

Biblioteca de compatibilidad de Android, revisión 11 (noviembre de 2012)

Cambios para la biblioteca de compatibilidad v4:

Biblioteca de compatibilidad de Android, revisión 10 (agosto de 2012)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó compatibilidad para funciones de notificación en Android 4.1 (nivel de API 16) con agregados en NotificationCompat.

Biblioteca de compatibilidad de Android, revisión 9 (junio de 2012)

Cambios para la biblioteca de compatibilidad v4:
  • Compatibilidad con interfaces de usuario
    • Se agregó compatibilidad con PagerTabStrip. Esto proporciona una funcionalidad mejorada más allá de PagerTitleStrip.
    • Se corrigieron diferentes errores en el caso de PagerTitleStrip y PagerTabStrip; se incluyen la opción setAllCaps, la alineación de títulos, mejoras de aspecto, restricciones de ancho mínimo y errores de navegación táctil.
    • Se agregó compatibilidad con canales de páginas ViewPager, lo cual permite que la clase ViewPager proporcione compatibilidad de paginación para el contenido con un amplio rango de desplazamiento horizontal, como en el caso de un mapa.
    • Se corrigieron numerosos errores relacionados con ViewPager; se incluyen problemas de cambio de tamaños y conjuntos de datos, el posicionamiento de página, la interacción del usuario, el seguimiento del desplazamiento y los problemas de navegación del teclado.
    • Se corrigieron muchos errores relacionados con Fragment; se incluyen el manejo apropiado de onActivityResult() cuando deja de existir el fragmento destino y el envío de eventos de selección a fragmentos invisibles. También se mejoró el comportamiento de FragmentTransaction.replace() y se agregó un mejor manejo de estados para fragmentos que se mueven fuera de la vista.
    • Se agregó compatibilidad con el método postOnAnimation() en ViewCompat.
    • Se actualizó NavUtils para usar la funcionalidad de navegación hacia arriba de Android 4.1 (nivel de API 16) cuando se encuentra disponible.
  • Accesibilidad
    • Se actualizaron clases de compatibilidad de accesibilidad, incluida AccessibilityNodeInfoCompat, para un seguimiento de correcciones realizadas en Android 4.1 (nivel de API 16).
    • Se agregó compatibilidad para acciones de desplazamiento de accesibilidad en ViewPager.
  • Mejoras generales

Biblioteca de compatibilidad de Android, revisión 8 (abril de 2012)

Cambios para la biblioteca de compatibilidad v4:
  • Se corrigieron los indicadores de intent para objetos PendingIntent generados por TaskStackBuilder.
  • Se eliminaron los atributos no usados de los proyectos de la biblioteca gridlayout para garantizar que se pueda crear la biblioteca a partir del nivel de API 7.
  • Se agregaron archivos .classpath y .project para el proyecto de biblioteca gridlayout.

Biblioteca de compatibilidad de Android, revisión 7 (marzo de 2012)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó ShareCompat, que proporciona clases auxiliar a fin de enviar y recibir contenido para aplicaciones de uso compartido social; se incluyen metadatos nuevos para atribuir datos compartidos a la app de origen. Esta clase también proporciona integración compatible con el nuevo ShareActionProvider en Android 4.0.
  • Se agregaron NavUtils y TaskStackBuilder a fin de proporcionar compatibilidad con la implementación de las pautas Android Design para la navegación. Entre estas adiciones se incluye una manera de implementar el botón Up de la barra de acciones en diferentes versiones. Para ver un caso de implementación de este patrón, consulta el ejemplo AppNavigation en (<em><sdk></em>/samples/<em><platform></em>/AppNavigation).
  • Se agregó NotificationCompat.Builder a fin de proporcionar una implementación de compatibilidad de la clase auxiliar Notification.Builder de Android 3.0 para crear notificaciones de sistema estandarizadas.

Biblioteca de compatibilidad de Android, revisión 6 (diciembre de 2011)

Nota: Ahora se encuentra disponible la referencia para las API de la biblioteca de compatibilidad con las referencias de framework; por ejemplo, android.support.v4.app.

Cambios para la biblioteca de compatibilidad v4:
  • Cambios para ViewPager:
    • Se agregó compatibilidad adicional con vistas decorativas para ViewPager. Las vistas decorativas pueden suministrarse como vistas secundarias de un paginador en diseño XML.
    • Se agregó PagerAdapter.getPageTitle() a fin de suministrar strings de títulos para páginas, cuyos valores predeterminados establecen la ausencia de títulos para cada página.
    • Se agregó PagerTitleStrip, una franja de título no interactiva que se puede añadir como campo secundario de ViewPager. Los desarrollares pueden suministrar la apariencia y el color del texto, así como también información sobre la gravedad y el tamaño del diseño.
    • Se actualizaron los métodos PagerAdapter a fin de tomar objetos ViewGroup en lugar de View para evitar la transmisión de clases en implementaciones del adaptador.
    • Se actualizó ViewPager para usar comportamiento de desplazamiento tipo Launcher.
    • Correcciones de errores para la interacción de la interfaz de usuario y la automatización de pruebas.
  • Compatibilidad con fragmentos:
    • Se cambió el método setStartDeferred() a setUserVisibleHint(boolean).
    • Se agregó un comienzo diferido para mejorar el rendimiento de las páginas fuera de la pantalla.
  • Compatibilidad con las API de accesibilidad:
    • Se actualizaron los métodos AccessibilityDelegateCompat para ejecutar listas vacías en lugar de nulas.
    • Se agregaron API nuevas necesarias para ejemplos de v4.

Biblioteca de compatibilidad de Android, revisión 5 (diciembre de 2011)

Cambios para la biblioteca de compatibilidad v4:

Biblioteca de compatibilidad de Android, revisión 4 (octubre de 2011)

Cambios para la biblioteca de compatibilidad v4:
  • Se agregó EdgeEffectCompat para admitir EdgeEffect.
  • Se agregó LocalBroadcastManager para permitir que las aplicaciones se puedan registrar de manera sencilla y puedan recibir intent dentro de una aplicación sin transmitirlos de manera global.
  • Se agregó compatibilidad en ViewCompat a fin de buscar y establecer modos de desplazamientos para elementos View en Android 2.3 y versiones posteriores.
  • Cambios en las Fragment API:
    • Se agregaron API nuevas para controlar la visibilidad de menús nuevos.
    • Se agregaron API de animación personalizada.
    • Se agregaron API en FragmentActivity para retener datos de instancias personalizados que no corresponden a configuraciones.
    • Se aplicaron diferentes correcciones de errores.
  • Se corrigió un error Loader que causaba problemas en la cancelación de elementos AsyncTask al realizar ejecuciones en Froyo y versiones anteriores de la plataforma. Ahora el código de compatibilidad usa su propia versión de AsyncTask para mantener el mismo comportamiento en todas las versiones de plataformas.

Biblioteca de compatibilidad de Android, revisión 3 (julio de 2011)

Cambios para la biblioteca de compatibilidad v4:
  • Se agrego compatibilidad para Fragment.SavedState
  • Se agrega MotionEventCompat para admitir API MotionEvent más nuevas.
  • Se agrega VelocityTrackerCompat para admitir API VelocityTracker más nuevas.
  • Se agrega ViewConfigurationCompat para admitir API ViewConfiguration más nuevas.
  • Todas las API nuevas (disponible únicamente en la biblioteca de compatibilidad) permiten crear IU con paginación horizontal. Esto hace posible que los usuarios puedan deslizarse hacia la izquierda y la derecha entre las vistas de contenido. Entre las clases para admitir esto se incluyen las siguientes:
    • ViewPager: ViewGroup que maneja el diseño para las vistas secundarias, entre las cuales el usuario puede aplicar deslizamiento.
    • PagerAdapter: adaptador que completa ViewPager con las vistas que representa cada página.
    • FragmentPagerAdapter: extensión de PagerAdapter para el cambio entre fragmentos.
    • FragmentStatePagerAdapter: extensión de PagerAdapter para el cambiar entre fragmentos. Usa la compatibilidad de la biblioteca con Fragment.SavedState.
Nueva biblioteca de compatibilidad v13:
  • incluye FragmentPagerAdapter y FragmentStatePagerAdapter para admitir la paginación horizontal.

    Estas son exactamente las mismas que las API agregadas a la biblioteca de compatibilidad v4, pero dependen de otros componentes de plataforma en Android 3.2. Usa esta biblioteca en lugar de la v4 si realizas desarrollos para Android 3.2 y versiones posteriores (todas las demás API de la biblioteca v4 y ya están disponible con el nivel de API 13).

Biblioteca de compatibilidad de Android, revisión 2 (mayo de 2011)

Cambios para la biblioteca v4:

Biblioteca de compatibilidad de Android, revisión 1 (marzo de 2011)

Versión inicial con la biblioteca v4.

This site uses cookies to store your preferences for site-specific language and display options.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a one-minute survey?
Help us improve Android tools and documentation.