En esta página, se proporcionan detalles sobre las versiones anteriores de los paquetes de la biblioteca de compatibilidad. Para versiones más recientes de la biblioteca de compatibilidad; consulta Recientes Revisiones de la biblioteca de compatibilidad
Revisión 26.0.0 Beta 2
(junio de 2017)
Ten en cuenta que la revisión 26.0.0-beta2 es una versión previa al lanzamiento. Su superficie de API es sujeta a cambios y no necesariamente incluye funciones o correcciones de errores. de las versiones estables más recientes de la biblioteca de compatibilidad.
Importante: Las bibliotecas de compatibilidad ya están disponibles a través del repositorio Maven de Google. No es necesario que descargues el recurso de SDK Manager. Para obtener más información, consulta Configuración de la biblioteca de compatibilidad.
API nuevas
- Nueva clase de
JobIntentService
para ayudarte los desarrolladores programan tareas de una manera que cumple con la nueva versión de Android O límites de ejecución en segundo plano.
Diferencias de API
Correcciones de errores
- La caída del SDK de Android O provoca la pérdida de cursiva en TextViews
- Excepción de puntero nulo durante la conexión a MediaBrowserServiceCompat
- TextInputLayout debe establecer sugerencias en onProvideAutofillStructure()
- Desbordamiento de pila cuando se usa el ajuste automático de tamaño de TextView en O
Revisión 26.0.0 Beta 1
(mayo de 2017)
Ten en cuenta que la revisión 26.0.0-beta1 es una versión previa al lanzamiento. Su superficie de API es sujeta a cambios y no necesariamente incluye funciones o correcciones de errores. de las versiones estables más recientes de la biblioteca de compatibilidad.
Importante: Las bibliotecas de compatibilidad ya están disponibles a través del repositorio Maven de Google. No es necesario que descargues el recurso de SDK Manager. Para obtener más información, consulta Configuración de la biblioteca de compatibilidad.
Cambios importantes
FragmentActivity.setSupportMediaController()
yFragmentActivity.getSupportMediaController()
se quitaron. Utiliza los nuevos métodos estáticosMediaControllerCompat.setMediaController()
yMediaControllerCompat.getMediaController()
.- Ahora llama a
BottomNavigationView
onNavigationItemReselected()
cuando se selecciona un elemento ya seleccionado en lugar de llamaronNavigationItemSelected()
- Todas las instancias del método
findViewById()
ahora devuelven<T extends View> T
en lugar deView
. Este cambio tiene las siguientes implicaciones:- Esto puede provocar que el código existente ahora tenga un tipo de datos ambiguo que se muestra.
por ejemplo, si hay
someMethod(View)
ysomeMethod(TextView)
que lleva el resultado de una llamada afindViewById()
- Cuando se usa el lenguaje de origen Java 8, se requiere una conversión explícita para
View
cuando el tipo de datos que se muestra no tiene restricciones (por ejemplo,assertNotNull(findViewById(...)).someViewMethod())
- Anulaciones de métodos
findViewById()
no finales (para por ejemplo,Activity.findViewById()
) necesitarán la devolución tipo actualizado.
- Esto puede provocar que el código existente ahora tenga un tipo de datos ambiguo que se muestra.
por ejemplo, si hay
API nuevas
-
FragmentManager
yFragment
tienen unisStateSaved()
para permitir consultar si un transacción sin pérdida de estado. Esto es especialmente útil para verificar cuando se controla un eventoonClick()
antes de ejecutar cualquier transacción. - En
AnimatedVectorDrawableCompat
, se admite el movimiento de rutas. El movimiento de ruta permite que un animador de objeto cambie dos propiedades al mismo tiempo el tiempo en función de una ruta; la ruta se especificaandroid:pathData
en el XML del animador). - Basado en la física
animación:
- Nuevo objeto
FlingAnimation
que admite animaciones con una velocidad inicial y se ralentiza suavemente. - Las subclases de
DynamicAnimation
admiten animaciones personalizadas. propiedad de cualquier objeto. - Tanto
SpringAnimation
comoFlingAnimation
pueden ahora animar un valor flotante sin requerir unView
o unaObject
asociados.
Para obtener más información, consulta la Animación de primavera y Animación de lanzamiento páginas de vista previa.
- Nuevo objeto
-
Fuente
Compatibilidad en XML:
-
ResourcesCompat.getFont
permite cargar fuentes recursos, incluido XML de familia de fuentes, que pueden usarse conTextView.setTypeface()
- Cuando se usa AppCompat, TextView admite especificar un recurso de fuente o
XML de familia de fuentes mediante el atributo XML
android:fontFamily
- Usa XML de familia de fuentes para crear familias de fuentes con estilo y peso.
variaciones. (Si usas las clases de la biblioteca de compatibilidad para esto, usa el
atributos
app:
, así comoandroid:
atributos).
-
- Descargable
fuentes:
- Nuevo objeto
FontsContractCompat
que te permite solicitar fuentes de un proveedor de fuentes en lugar de agruparlas en tu app. - Las fuentes también pueden solicitarse en XML y usarse en los diseños.
- Nuevo objeto
-
Compatibilidad con emojis
biblioteca:
-
EmojiCompat
puede procesar unCharSequence
determinado y agregaEmojiSpans
. -
EmojiTextView
y otros widgets para mostrar emojis. -
FontRequestEmojiCompatConfig
para solicitar fuentes de emojis desde un proveedor de fuentes.
-
-
Ajuste automático de tamaño
TextView:
- Nuevos métodos en
TextViewCompat
y atributos XML para controlar el ajuste automático de tamaño enTextView
.
- Nuevos métodos en
- Controles de reproducción Leanback con soporte de búsqueda:
-
- Nuevo
PlaybackTransportRowPresenter
que renderiza la reproducción con una barra de búsqueda. - Nuevo
PlaybackTransportControlGlue
que funciona conPlaybackTransportRowPresenter
y admite búsquedas. - Nueva clase base
PlaybackSeekDataProvider
para que la app proporcionar miniaturas de búsqueda aPlaybackTransportControlGlue
- Nuevo
- Almacén de datos de preferencias:
-
PreferenceDataStore
ahora te permite implementar tu propio almacenamiento de preferencias, configurado con nuevos métodos enPreference
yPreferenceManager
.
-
Problemas conocidos
- Integración de la compatibilidad de fuentes y emojis descargables con Google Play Los Servicios solo funcionan en los Servicios de Google Play v11 y versiones posteriores, que actualmente disponible a través de la página Programa de Servicios Beta.
Correcciones de errores
-
La API de
MediaBrowserCompat.search()
no funciona (problema de AOSP) 262170). -
ViewCompat.postInvalidateOnAnimation()
arroja una excepción (AOSP (error 80146) -
onActivityCreated()
llamó a fragmentos en una actividad destruida -
RecyclerView.isComputingLayout()
debe mostrar el valor true durante carga previa -
Cuando se interrumpe y se revierte una transición de
Fade
, laView
inicia la animación desde el principio. (Corregir puerto de Framework de Android). -
Transition.Fade
ignora la versión alfa inicial deView
(Problema 221820 de AOSP)
Revisión 26.0.0 Alfa 1
(marzo de 2017)
Ten en cuenta que la revisión 26.0.0-alpha1 es una versión previa al lanzamiento. Su superficie de API es sujeta a cambios y no necesariamente incluye funciones o correcciones de errores. de las versiones estables más recientes de la biblioteca de compatibilidad.
Cambios importantes
Nota: La versión mínima del SDK aumentó a 14. Como resultado, muchas APIs que existían solo para API < 14 tienen quedó obsoleto. Los clientes de estas APIs deben migrar a su framework equivalentes, como se indica en la página de referencia de cada API obsoleta.
- El módulo support-percent quedó obsoleto. Clientes de este módulo Deberías migrar al nuevo widget ConstraintLayout, que se proporciona como independiente en SDK Manager.
- El módulo support-fragment ya no depende del support-media-compat.
API nuevas
Se agregaron muchas clases, métodos y constantes nuevos para proporcionar compatibilidad con versiones anteriores para las APIs de plataforma agregadas en la versión preliminar de O.
IME_FLAG_NO_PERSONALIZED_LEARNING
: Los IME pueden escuchar "sin aprendizaje" marcas de las aplicaciones que tienen modo privado, como los navegadores. Esta ayuda a los IME a comprender si una app está en modo privado, de modo que puedan inhabilitar su aprendizaje o funcionalidad adaptable mientras la app esté en ese .
Para obtener una lista completa de los cambios de la API entre 25.2.0 y 26.0.0-alpha1, consulta la API de la biblioteca de compatibilidad informe de diferencias.
Correcciones de errores
- En algunos casos, es simple
AutoTransition
. la animación puede interrumpirse por "saltos" de la vista. (Problema 221816 de AOSP)
Revisión 25.4.0
(junio de 2017)
Importante: Las bibliotecas de compatibilidad ya están disponibles a través del repositorio Maven de Google. No es necesario que descargues el recurso de SDK Manager. Para obtener más información, consulta Configuración de la biblioteca de compatibilidad.
Cambios importantes
- No se permiten llamadas a
executePendingTransactions()
,commitNow()
,popBackStackImmediate()
ni transacciones similares duranteFragmentManager
cambia el estado. Reentrante La ejecución de transacciones no es segura yFragmentManager
ahora aplica esto durante su estado cambios. - Simultáneamente con esta versión de la biblioteca de compatibilidad, también lanzaremos
multidex
versión 1.0.2. En esta versión, se incluyen los siguientes cambios importantes:
- Permite el uso de multidex para el APK de instrumentación.
- MultiDexTestRunner deja de estar disponible (se debe usar AndroidJUnitRunner en su lugar).
- Proporciona una mejor protección contra la extracción de archivos incorrecta. la administración de la app.
- Se corrigió un error que podía provocar archivos temporales abandonados.
- Proporciona una instalación más rápida cuando se realiza en un proceso simultáneo.
- Corrige un error de instalación en los niveles de API 19 y 20.
API nuevas y modificadas
Se admiten la transformación y la interpolación de rutas en AnimatedVectorDrawableCompat
. Transformación de la ruta
permiten que las formas cambien desde una ruta (especificada como
android:valueFrom
) a otra ruta (especificada como
android:valueTo
), con el fin de proporcionar imágenes complejas y atractivas
efectos. La interpolación de la ruta permite que se especifiquen los interpoladores de AnimatedVectorDrawableCompat
como rutas (especificadas como android:pathData
en la columna
XML).
Diferencias de API
Errores corregidos
- Excepción de puntero nulo durante la conexión a MediaBrowserServiceCompat
- La API de MediaBrowserCompat.search() no funciona (problema 262170 de AOSP)
- Devoluciones de llamada browseFragment onItemClicked dañadas en 25.3.0.
- NullPointerException mientras el usuario se desplaza hacia arriba y hacia abajo en VerticalGridView en 25.3.1
- ClassCastException en SimpleArrayMap.allocArrays()
Revisión 25.3.1
(marzo de 2017)
Errores corregidos
SwitchCompat
requiere una cantidad mínima de SDK. versión 14 o una posterior. (Problema 251302 de AOSP)- La animación basada en la física
updateListener
omite el primer fotograma. - Animación de la etiqueta
BottomNavigationView
está roto.
Revisión 25.3.0
(marzo de 2017)
Cambios importantes
Los metadatos de la versión de la biblioteca de compatibilidad se agregarán automáticamente a
AndroidManifest.xml
cuando compilas desde Gradle, lo que simplifica
y hacer un seguimiento de las versiones
en compilaciones públicas. Por ejemplo:
<meta-data android:name="android.support.VERSION" android:value="25.3.0" />
Elementos obsoletos
En esta versión, varios métodos y clases dejaron de estar disponibles. Estas APIs obsoletas se quitarán en una versión futura y los desarrolladores deberían migrar de ellos. Para obtener más información sobre cómo migrar específica, consulta su documentación.
ExifInterface
- El método booleano
getLatLong(float[])
dejó de estar disponible. En su lugar, usa el nuevo métodogetLatLong()
. que no recibe argumentos y muestradouble[]
. mediacompat
PlaybackStateCompat.Builder.setErrorMessage(CharSequence)
ya no está disponible. En su lugar, usa el nuevo métodosetErrorMessage(int, CharSequence)
, que recibe un código de error y una descripción opcional.EXTRA_SUGGESTION_KEYWORDS
dejó de estar disponible. En su lugar, usa el Funcionalidad de búsqueda deMediaBrowserCompat
.v7.recyclerview
LinearLayoutManager.getInitialItemPrefetchCount()
recibió Se cambió el nombre porLinearLayoutManager.getInitialPrefetchItemCount()
. El nombre antiguo aún es compatible, pero se quitará en una versión futura.
API nuevas y modificadas
appcompat-v7
- El nuevo método
ActionBarDrawerToggle.setDrawerSlideAnimationEnabled(boolean)
simplifica la inhabilitación de la animación del ícono para activar o desactivar el panel lateral de navegación. customtabs
- Se agregó compatibilidad para canales de mensajes. Consulta la
CustomTabsService.requestPostMessageChannel()
yCustomTabsService.postMessage()
para obtener más detalles. dynamic-animation
- Nueva biblioteca de animación basada en la física que proporciona un conjunto de APIs para Crear animaciones que reaccionen dinámicamente a las entradas del usuario.
leanback-v17
- Se agregó compatibilidad con fondos de paralaje. Consulta la
Parallax
para obtener más detalles. - Agregada
TimePicker
para seleccionar horarios en una interfaz de TV. mediacompat
- Se agregó funcionalidad de búsqueda. Consulta la
MediaBrowserCompat.search()
yMediaBrowserServiceCompat.onSearch()
para obtener más detalles. - Se agregó compatibilidad con los modos de reproducción aleatoria y repetición. Consulta la
MediaSessionCompat.setRepeatMode()
ysetShuffleModeEnabled()
para obtener más detalles.
Errores corregidos
StaggeredGridLayoutManager
lanzaIllegalArgumentException
(Problema 230295 de AOSP)- La carga previa de
RecyclerView
no controla correctamente unRecyclerView
que está adjunto, pero no en pantalla LinearLayout
no reconocido por Robolectric- Cuando se destruye
Activity
,onActivityCreated()
se invoca de manera incorrecta para sus fragmentos - El constructor
AppCompatImageView
provocaArrayIndexOutOfBoundsException
- Bajo rendimiento de la IU en la transición de actividad de
Call.Details
Revisión 25.2.0
(febrero de 2017)
Cambios importantes
Errores corregidos
- En esta versión, se soluciona un problema grave de mediarouter en el que usar un archivo A2DP las APIs de enrutamiento del dispositivo y del contenido multimedia podrían hacer que el dispositivo no responda lo que requiere un reinicio.
- El
FragmentManager.FragmentLifecycleCallbacks
ahora es estática.
Errores corregidos
- Mostrar una presentación de diapositivas con duplicación de pantalla hace que el dispositivo Desconéctate de la red Wi-Fi
- El botón multimedia no manejó correctamente las apps de música que no se registraron
con
setMediaButtonReceiver()
-
Error
VectorDrawable
con recurso de cadenas (problema 232407 de AOSP) - Sugerencia de superposiciones de
TextInputLayout
y texto si el texto se establece mediante XML (problema 230171 de AOSP) - Fuga de memoria en
MediaControllerCompat
(problema de AOSP) 231441). -
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
fallando RecyclerView
falla cuando se recicla contenedores de vistas (problema 225762 de AOSP)getAllowGeneratedReplies()
muestra incorrectamente "false" para acciones dentro deWearableExtender
Revisión 25.1.1
(enero de 2017)
Importante: Hay un error conocido en el android.support.v7.media.MediaRouter
en las revisiones 25.1.1 y 25.1.0 de la biblioteca de compatibilidad. Si tu app usa
la versión 7 de MediaRouter
,
debes actualizar a la Revisión de la biblioteca de compatibilidad 25.2.0.
que corrige este error.
Cambios importantes
-
Las transacciones de fragmentos ahora se pueden optimizar dentro y entre transacciones de contenedores. Optimizar operaciones de transacción de fragmentos puede eliminar las operaciones que cancelen. Por ejemplo, supongamos que se se ejecutan juntas, una que agrega un fragmento A y otra que reemplaza al fragmento A por el B. En este caso, la primera operación podría cancelarse y solo se agregue el fragmento B. Eso significa que el fragmento A podría no pasar por el ciclo de vida de creación/destrucción.
Un efecto secundario de esta optimización es que los fragmentos podrían tener estado cambios fuera del orden esperado. Por ejemplo, supongamos que una transacción agrega el fragmento A, un segundo agrega el fragmento B y un tercero quita el fragmento R. Sin optimización, el fragmento B podría esperar creado, el fragmento A también existirá porque el fragmento A se quitará después de agregar el fragmento B. Con la optimización, el fragmento B no puede estar seguro ese fragmento A existirá mientras se crea B, porque el fragmento A la creación y destrucción puede eliminarse a través de la optimización.
De manera predeterminada, esta optimización está inhabilitada. Para habilitar la optimización, llama a
FragmentTransaction.setAllowOptimization(true)
. - Ahora los fragmentos pueden posponer sus transiciones y animaciones
están listos para usar
Fragment.postponeEnterTransition()
yFragment.startPostponedEnterTransition()
. Esta API es similar aActivity.postponeEnterTransition()
yActivity.startPostponedEnterTransition()
cuando su uso se da con actividades de transacción.
Errores corregidos
-
MediaSessionCompatTest
falla conIllegalArgumentException
-
No se llama a
DetailsFragment.installTitleView()
en 25.1.0. - La transacción de fragmentos conserva la vista fantasma al salir (problema 230679 de AOSP)
-
BottomNavigationView
requiere espaciado entre el ícono del elemento y el texto (Problema 230653 de AOSP) - Faltan objetos de escucha seleccionados en el
PlaybackFragment
nuevo yPlaybackSupportFragment
-
El enfoque de
TextInputLayout
no cambia correctamente en el emulador desde la versión 25.1.0 de la biblioteca de compatibilidad (problema de AOSP) 230461). - No se puede reemplazar el menú de un
BottomNavigationView
(AOSP (error 230343) -
RecyclerView
conStaggeredGridLayoutManager
fallas con elementos de intervalo completo (problema 230295 de AOSP) - Falla en
MediaSessionCompat
cuando usandosetCallback(null)
-
PlaybackGlueHostOld
yPlaybackSupportGlueHostOld
no notifica las devoluciones de llamada cuando cambios en la fila de reproducción -
Ejemplo de
PlaybackOverlayFragment
/test
no puede iniciar la reproducción -
RecyclerViewFocusRecoveryTest
falla en el nivel de API 15 - "Capturas de pantalla" la fila se enfoca en la parte superior de la pantalla
-
RecyclerViewLayoutTest.triggerFocusSearchInOnRecycledCallback()
falla en el nivel de API 15. -
setActions()
enonSubactionClicked()
tiene errores -
RecyclerView
falla cuando se reciclan algunos contenedores de vistas
Revisión 25.1.0
(diciembre de 2016)
Importante: Hay un error conocido en el android.support.v7.media.MediaRouter
en las revisiones 25.1.1 y 25.1.0 de la biblioteca de compatibilidad. Si tu app usa
la versión 7 de MediaRouter
,
debes actualizar a la Revisión de la biblioteca de compatibilidad 25.2.0.
que corrige este error.
Cambios importantes
- Clientes de widgets
RecyclerView
anidados (por ejemplo, lista de desplazamiento vertical de listas de desplazamiento horizontal) puede obtener beneficios significativos de rendimiento al sugerir a los administradores de diseñoRecyclerView
internos la cantidad de elementos a preparar antes de que se desplacen por la pantalla. LlamadaLinearLayoutManager.setInitialPrefetchItemCount(N)
, donde N es la cantidad de vistas visibles por elemento interno. Por ejemplo: si las listas horizontales internas muestran un mínimo de tres vistas y media de elementos. puedes mejorar el rendimiento llamandoLinearLayoutManager.setInitialPrefetchItemCount(4)
Hacerlo permite queRecyclerView
cree todos los eventos de vistas anticipadas, mientras que elRecyclerView
externo es el desplazamiento, lo que reduce significativamente la cantidad de saltos durante manuscritos. FragmentActivity.setSupportMediaController()
yFragmentActivity.getSupportMediaController()
dejaron de estar disponibles. Usa los nuevosMediaControllerCompat.setMediaController()
yMediaControllerCompat.getMediaController()
estáticos. .- Cuando un cliente especifica un tono de widget a través del tono de appcompat (por ejemplo,
appcompat:buttonTint
), el cliente es responsable de proporcionar todos los estados necesarios (como "inhabilitado", "presionado", etc.). Este es de manera coherente con la forma en que se especifican los tonos de widget cuando se usan ajustes de tono del framework.
API nuevas y modificadas
- Se agregó compatibilidad con ExifInterface biblioteca. Esta biblioteca desagrupa compatibilidad para leer información EXIF de JPEG y formato sin procesar. y configurar la información EXIF en archivos de imagen JPEG.
- Se refactorizó
Snackbar
a permitir que las apps muestren contenido personalizado.BaseTransientBottomBar
es la nueva clase base que expone la comportamiento general de animaciones y deslizamiento. - Se agregó un nuevo paquete Leanback.media que contiene clases auxiliares para integrar reproductores multimedia en aplicaciones de Android TV.
- Se agregó
SeekBarPreference
con diseño personalizable y atributos para la preferencia v7 biblioteca de compatibilidad. - Se agregó
ArraySet
a la biblioteca de compatibilidad v4. Esta clase corresponde al framework La claseArraySet
que se introdujo con el nivel de API 23. RecyclerView
elemento RecyclerView Mejoras en la carga previa:- Carga previa de
RecyclerView
anidada Permite la carga previa del contenido de unRecyclerView
dentro de otroRecyclerView
de desplazamiento, con la API para controlar la cantidad de completa la carga previa: - Se agregaron APIs para el
LayoutManager
personalizado. Objetos para implementar para habilitar la carga previa durante desplazamientos y deslizamientos - Mejoras en la carga previa para realizar solo el trabajo de creación y vinculación que sea posible. posible en el tiempo entre los fotogramas
- Carga previa de
Errores corregidos
- La alternancia de visibilidad de contraseña falla en las pruebas de accesibilidad.
- Appcompat no respeta
state_enabled
en dispositivos con versiones anteriores a Android L. - Se agregó un mecanismo de recuperación de foco a
RecyclerView
. Esto también corrigió la preferencia de compatibilidad El foco dañado de fragmentos cuando se usa la navegación Dpad, como en Android TV dispositivos. - Leanback: BrowseFragment falla con los encabezados inhabilitados y el adaptador vacío.
- Appcompat:
AlertDialog
es demasiado ancho. InputContentInfoCompat
llamadarequestPermission()
cuando debe llamar areleasePermission()
.MediaBrowserCompat
falla.- CoordinatorLayout mide/implementa vistas cuando la visibilidad está configurada en
GONE
- No se pudo ajustar el tono de
AnimatedVectorDrawableCompat
en el nivel de API. menos de 24 - La biblioteca Leanback activa errores falsos de lint.
- La biblioteca de paletas provocó pruebas fallidas en todos los niveles de API
RecyclerView
pruebas fallidas en LeanbackRecyclerView
falla cuando se recicla contenedores de vistas (problema 225762 de AOSP)Fragment.onDestroy()
no se llamó al fragmento en la pila de actividades- La lámina de
CollapsingToolbarLayout
es no se dibuja cuando se contrae CoordinatorLayout.offsetChildByInset()
tirosIllegalArgumentException
- Se está animando la desvinculación de
RecyclerView
de elementosRecyclerView
internos, prevenir el futuro cargas previas - No se pueden adjuntar
RecyclerView
elementos carga previa anidada - Cargar datos previamente para
RecyclerView
anidados los elementos se descartan durante el primer diseño - La carga previa de
RecyclerView
falla si dos arrastres eventos llegan en la misma posición RecyclerView
debe, de manera especulativa, mientras se renderiza RenderThread- Los recursos de color de configuración nocturna convertidos en elementos de diseño no siempre son se borró definitivamente de la caché de recursos
FloatingActionButton
: La configuración programática de BackgroundTintList no funciona correctamente (AOSP) error 227428)TextInputLayout
: El tipo de letra no es se está configurando para ErrorView (problema 227803 de AOSP)TextInputLayout
siempre recurre a un método alternativo para aclarar un color de error por debajo del nivel de API 23 (problema 221992 de AOSP)FloatingActionButton
se muestra como se presiona cuando el puntero sale
Una lista completa de correcciones de errores públicas se encuentra disponible en el Herramienta de seguimiento de errores del AOSP.
Bajas
En esta versión, varios métodos y clases dejaron de estar disponibles. Estos Las APIs obsoletas se quitarán en una versión futura y los desarrolladores deben migrar de ellos. Para obtener más información sobre cómo migrar específica, consulta su documentación.
-
android.support.design.widget
-
android.support.v17.leanback.app
BackgroundManager.getDefaultDimLayer()
BackgroundManager.getDimLayer()
BackgroundManager.setDimLayer()
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[])
MediaControllerGlue.MediaControllerGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[])
PlaybackControlGlue.PlaybackControlGlue(Context,PlaybackOverlayFragment,int[],int[])
PlaybackControlGlue.getFragment()
PlaybackControlGlue.getOnItemViewClickedListener()
PlaybackControlGlue.onRowChanged()
PlaybackControlGlue.pausePlayback()
PlaybackControlGlue.skipToNext()
PlaybackControlGlue.skipToPrevious()
PlaybackControlGlue.startPlayback()
PlaybackControlSupportGlue
PlaybackOverlayFragment
PlaybackOverlaySupportFragment
-
android.support.v17.leanback.widget
-
android.support.v4.app
FragmentActivity.getSupportMediaController()
FragmentActivity.setSupportMediaController()
Revisión 25.0.1
(noviembre de 2016)
Errores corregidos
- El botón de activación de la contraseña de
TextInputLayout
ahora está inhabilitado de forma predeterminada para evitar reemplazar innecesariamente de elementos de diseño finales especificados por el desarrollador. Puede habilitarse manualmente a través del Atributo XMLpasswordToggleEnabled
. BottomNavigationView
elementos ahora están disponibles una sola línea para que coincida con la especificación de Material.RecyclerView
falla durante la carga previa si el administrador de diseño es nulo.- La elevación de
BottomNavigationView
es que ahora están configurados correctamente. (Problema 226182 de AOSP) BottomNavigationView
falla cuando agregar elementos de menú de forma programática. (Problema 225731 de AOSP)- Corregir en
TextInputLayout
a la izquierda y derecha de elementos de diseño compuestos. (Problema 225836 de AOSP) RecyclerView
falla cuando se recicla de objetos View. (Problema 225762 de AOSP)- Leanback: TalkBack dice con frecuencia la palabra "null". en vistas de pantalla dividida.
RecyclerView
: problemas de renderización en Android Studio (Problema 225753 de AOSP)- Aún se muestra
BottomNavigationView
el elemento de menú seleccionado después deonNavigationItemSelected()
muestra un valor falso. (Problema 225898 de AOSP) - ForwardingListener arroja
NoSuchMethodError
. (AOSP (error 225647) - No se muestra
TextInputEditText
en el modo de extracción IME. (Problema 221880 de AOSP)
Una lista completa de correcciones de errores públicas se encuentra disponible en el Herramienta de seguimiento de errores del AOSP.
Revisión 25.0.0
(octubre de 2016)
Cambios importantes
- El constructor
ContextCompat
que están protegidas. No se debe crear una instancia pública de esta clase, pero es posible ampliadas mediante bibliotecas de compatibilidad orientadas a niveles de API más recientes. - Se creó el constructor
ActivityCompat
están protegidos. No se debe crear una instancia pública de esta clase, pero es posible ampliadas con bibliotecas de compatibilidad orientadas a niveles de API más recientes. - Se realizó
getReferrer(Activity)
estática. -
Se quitó
android.support.design.widget.CoordinatorLayout.Behavior.isDirty(CoordinatorLayout, V)
. Cualquier implementación cliente de este método deben quitarse. -
Se quitó
android.support.v4.media.session.MediaSessionCompat.obtain(Context, Object)
. Los usos deben reemplazarse con "more" al método con el nombre apropiadofromMediaSession()
-
android.support.v4.media.session.MediaSessionCompat.QueueItem.obtain(Object)
se ha eliminado. Los usos deben reemplazarse con método con nombreMediaSessionCompat.QueueItem#fromQueueItem
-
Se quitó
android.support.v7.widget.Space
. Usos debe reemplazarse porandroid.support.v4.widget.Space
.
API nuevas
-
Clase
android.support.design.widget.BottomNavigationView
implementa la parte inferior de navegación de la especificación de Material Design. - El nuevo paquete
android.support.v13.view.inputmethod
incluye clases para acceder a las funcionesandroid.view.inputmethod.InputConnection
introducidas después de la API nivel 13. -
Clase
android.v7.widget.RecyclerView.DividerItemDecoration
proporciona una implementación básica para divisores horizontales o verticales entre elementos. - Nuevos estilos decorados en
android.support.v7.app.NotificationCompat
,DecoratedCustomViewStyle
yDecoratedMediaCustomViewStyle
, se agregaron clases de duplicación y la API 24 de la plataforma.
Errores corregidos
Una lista completa de correcciones de errores públicas se encuentra disponible en el Herramienta de seguimiento de errores del AOSP.
Revisión 24.2.1
(septiembre de 2016)
Errores corregidos:
FloatingActionButton
ya no puede anclar a elementos secundarios indirectos deCoordinatorLayout
. (Problema 220250 de AOSP)- La imagen dentro de
CollapsingToolbarLayout
no se ajusta correctamente confitsSystemWindows=true
. (Problema 220389 de AOSP) CoordinatorLayout
arrojaIndexOutOfBoundsException
cuando se muestra y se descartaSnackbar
. (Problema de AOSP 220762).- No se puede resolver
TextInputLayout
error de texto. (Problema 220305 de AOSP) BatchedCallback.onMoved()
llama aBatchedCallback.onInserted()
. (Problema 220309 de AOSP)TextInputLayout
anula a la derecha elemento de diseño compuesto. (Problema 220728 de AOSP)
Una lista completa de correcciones de errores públicas se encuentra disponible en el Herramienta de seguimiento de errores del AOSP.
Revisión 24.2.0
agosto de 2016
La versión 24.2.0 incluye los siguientes cambios:
- División de la biblioteca de compatibilidad de la versión 4
- Actualizaciones de API
- Cambios en el comportamiento
- Elementos obsoletos
- Correcciones de errores
Nota: En la versión 24.2.0, se quita la compatibilidad con Android 2.2 (nivel de API 8) y versiones anteriores Las clases y los métodos que existen solo para Ahora, esas versiones del sistema están marcadas como obsoletas y ya no deberían que se usará. Estos métodos y clases obsoletos podrían quitarse en el futuro. lanzamiento.
División de la biblioteca de compatibilidad de la versión 4
En esta versión, la biblioteca de compatibilidad v4 incluye se dividió en varios módulos más pequeños:
-
support-compat
-
Proporciona wrappers de compatibilidad para las nuevas APIs de framework, como
Context.getDrawable()
yView.performAccessibilityAction()
-
support-core-utils
-
Proporciona una serie de clases de utilidad, como
AsyncTaskLoader
yPermissionChecker
. -
support-core-ui
-
Implementa una variedad de componentes relacionados con la IU, como
ViewPager
,NestedScrollView
yExploreByTouchHelper
. -
support-media-compat
-
Ofrece portabilidad a versiones anteriores del framework de multimedia.
incluidos
MediaBrowser
yMediaSession
. -
support-fragment
-
Portabilidad a versiones anteriores del fragmento
en un framework de aplicaciones. Este módulo tiene dependencias en
support-compat
,support-core-utils
,support-core-ui
ysupport-media-compat
Para tener retrocompatibilidad, si enumeras support-v4
en tu
de Gradle, tu APK incluirá todos estos módulos. Sin embargo, para reducir
del APK, te recomendamos que solo enumeres los módulos específicos que necesita tu app.
Actualizaciones de API
- Los clientes que usan pestañas personalizadas pueden
controlar si se deben abrir las Apps instantáneas. (Ten en cuenta que las Apps instantáneas aún no están
disponibilidad general). Para habilitar o inhabilitar las Apps instantáneas, llama a
CustomTabsIntent.Builder.setInstantAppsEnabled()
o especificarEXTRA_ENABLE_INSTANT_APPS
De forma predeterminada, las pestañas personalizadas de forma predeterminada, cuando la función esté disponible, TextInputLayout
agrega compatibilidad con el botón de activación de visibilidad de contraseña de la especificación de Material Design.- El nuevo
android.support.transition
portabilidad a versiones anteriores del paquete del framework de transiciones a los niveles de API 14 y versiones posteriores. Para obtener más información, consulta la referenciaandroid.support.transition
. - La biblioteca de compatibilidad de Pestañas personalizadas
se agrega compatibilidad para usar
RemoteViews
en la API barra de herramientas. ElsetToolbarItem()
existente quedó obsoleto. AppCompatResources
agrega el elemento capacidad de cargar un<vector>
(en el nivel de API 9 y versiones posteriores)<animated-vector>
(en el nivel de API 11 y versiones posteriores) de un el ID de recurso a través del nuevo métodogetDrawable()
.CoordinatorLayout
ahora admite definir las vistas en recuadro y especificar que otras vistas deben esquivar la inserción vistas. Esto permite que las apps repliquen patrones de comportamiento de manera similar a comoFloatingActionButton
se quita de la de unaSnackbar
, pero para cualquier elementos secundarios de vistas arbitrarios. Para obtener más información, consulta elLayoutParams.insetEdge
yLayoutParams.dodgeInsetEdges
.- La nueva clase
DiffUtil
puede calcular la diferencia entre dos colecciones y pueden enviar una lista de operaciones de actualización adecuadas que los consuma unRecyclerView.Adapter
. -
Se agregó
RecyclerView.OnFlingListener
para admitir funciones personalizadas en respuesta a lanzamientos. LaSnapHelper
proporciona una implementación específica para ajustar vistas secundarias yLinearSnapHelper
extiende esta implementación para proporcionar un ajuste alineado al centro y tiene un comportamiento similar al deViewPager
. - La biblioteca de pestañas personalizadas ahora permite que los clientes soliciten el permiso
de tu navegador, en lugar de una IU con pestañas personalizadas, llamando a
CustomTabsIntent.setAlwaysUseBrowserUI()
Este comportamiento es útil en casos en los que el navegador usa de forma predeterminada la IU con pestañas personalizadas, pero el usuario expresó una preferencia por la IU estándar del navegador.
Cambios en el comportamiento
- Si usas la funcionalidad de día/noche de la biblioteca appcompat, el sistema
ahora recrea automáticamente tu actividad cada vez que cambia el modo diurno/nocturno
(ya sea debido a la hora del día o a una llamada a
AppCompatDelegate.setLocalNightMode()
). Snackbar
ahora empata detrás del la barra de navegación si la barra de estado es translúcida.
Biblioteca MediaRouter
Los dispositivos Bluetooth ya no aparecen como rutas de medios. Enrutando el audio a Ahora los dispositivos Bluetooth se controlan únicamente en el nivel del sistema Android.
Bajas
Las clases y los métodos obsoletos están sujetos a eliminación en una versión futura. Debes dejar de usar estas API lo antes posible.
- Varios métodos de las siguientes clases solo se requerían para el nivel de API 8 y
será menor y ya no debería usarse. En su lugar, usa el framework
de Google Cloud.
android.support.v4.view.KeyEventCompat
: Reemplaza conKeyEvent
.android.support.v4.view.MotionEventCompat
: UsaMotionEvent
.android.support.v4.view.ViewCompat
: UsaView
.android.support.v4.view.ViewConfigurationCompat
: UsaViewConfiguration
.
-
AccessibilityServiceInfoCompat.getDescription()
dejó de estar disponible y se reemplazó porAccessibilityServiceInfoCompat.loadDescription()
, que devuelve una descripción localizada correctamente. - No debes crear una instancia de la clase
ActivityCompat
. directamente. El métodogetReferrer(Activity)
no estático será se volvió estática en una próxima versión. CoordinatorLayout.Behavior.isDirty()
dejó de estar disponible y ya no está disponible que llamaCoordinatorLayout
. Cualquiera de código abierto, así como cualquier llamada a este método.MediaSessionCompat.obtain()
dejó de estar disponible y se reemplazó con el método con un nombre más apropiadofromMediaSession()
MediaSessionCompat.QueueItem.obtain()
dejó de estar disponible y se reemplazó por el método con un nombre más apropiadofromQueueItem()
- Varias clases abstractas dejaron de estar disponibles y se reemplazaron por
interfaces de usuario que reflejen mejor sus equivalentes del framework.
AccessibilityStateChangeListenerCompat
se reemplazó porAccessibilityManagerCompat.AccessibilityStateChangeListener
interfaz de usuario.OnCloseListenerCompat
tiene se reemplazó por la interfazSearchViewCompat.OnCloseListener
.OnQueryTextListenerCompat
se reemplazó porSearchViewCompat.OnQueryTextListener
interfaz de usuario.
CustomTabsSession.setToolbarItem()
dejó de estar disponible y se reemplazó por el Basado en RemoteViewssetSecondaryToolbarViews()
Correcciones de errores
En la versión 24.2.0, se corrigieron los siguientes problemas conocidos:
- Asegúrate de que se muestre el indicador
SwipeRefreshLayout
cuando Se llama asetRefreshing(true)
antes del primer pase de medición. (AOSP problema 77712) - Evita que
TabLayout
parpadee cuando cambies de página (AOSP error 180454). - Evita
ClassNotFoundException
para la desalineación.SavedState
en el nivel de API 11 y versiones anteriores (problema de AOSP 196,430)
Una lista completa de correcciones de errores públicas se encuentra disponible en el Herramienta de seguimiento de errores del AOSP.
Revisión 24.1.1
julio de 2016
Errores corregidos:
- Corrige un problema en la versión 24.1.0 que afectaba los IDs de recursos. que se comparten entre las bibliotecas de compatibilidad. Este problema causaba que las apps que dependían de bibliotecas de compatibilidad con recursos (como design y appcompat) para encontrar problemas causados por discrepancias en el ID de recursos.
Revisión 24.1.0
Julio de 2016
- Cambios para la asistencia de la versión 4 Biblioteca:
-
NotificationCompat.Action.WearableExtender
tiene nuevosgetHintDisplayActionInline()
ysetHintDisplayActionInline()
para la compatibilidad con Versión preliminar de Android Wear 2.0. Estos métodos permiten que una aplicación especifique que se debe se muestra alineado con la notificación.- Llamar a
Fragment.setUserVisbileHint()
ya no hará que un fragmento se convierta started si la sugerencia se agregó a unFragmentTransaction
que aún no se confirmó. Esta afecta a los usuarios deFragmentPagerAdapter
que anularsetUserVisbileHint()
y suponer un estado de ciclo de vida específico del fragmento después de llamar asuper.setUserVisibleHint()
. Para obtener más información, consulta la página de referencia de los documentos deFragment.setUserVisbileHint()
.
Errores corregidos:
- TabLayout.setCustomView(null) genera NullPointerException. (AOSP error 214753).
- TabLayout destaca de manera incorrecta las pestañas personalizadas (problema 214316 de AOSP)
- AppCompatTextHelper usa un array de atributos ordenado de manera incorrecta (problema 214366 de AOSP)
- No se puede hacer referencia a VectorDrawable desde el XML del contenedor de elementos de diseño cuando se usa. ContextWrapper personalizado (problema 214055 de AOSP)
- ViewDragHelper.saveLastMotion() genera ArrayIndexOutOfBoundsException. (AOSP error 212945).
- BottomSheetBehavior se expande a la altura del contenido anterior cuando se usa setState(STATE_EXPANDED) (problema de AOSP 213660).
- CollapsingToolbarLayout no controla los elementos secundarios que se pueden fijar con los elementos márgenes inferiores (problema de AOSP 213,001)
- El título de navegación de Leanback no es compatible con la alineación RTL (problema de AOSP). 213461).
- PagerTabStrip desaparece debido a la anotación heredada faltante (problema de AOSP) 213359).
- La vinculación de datos arroja una excepción NullPointerException cuando se usa un booleano para establecer marcas condicionales (problema de AOSP 191841).
- CoordinatorLayout no responde a setFitsSystemWindows() (problema de AOSP). 212720).
- BottomSheetBehavior falla cuando se configura el estado inicial (problema de AOSP). 203114).
- ViewPager omite páginas si el índice de la página es un valor grande. (problema de AOSP 211734).
- BottomSheetBehavior no funciona con diseños dinámicos (problema de AOSP). 205226).
Revisión 24.0.0
junio de 2016
- Cambios para la asistencia de la versión 4 Biblioteca:
-
- Se agregó el
Fragment.commitNow()
para la confirmación síncrona - Se agregó el
NotificationCompat.MessagingStyle
para las conversaciones con varias partes - Se agregó el
NotificationManagerCompat.areNotificationsEnabled()
ygetImportance()
. MediaSessionCompat
ahora refleja la funcionalidad deMediaSession
y ya no llama asetMediaButtonReceiver()
automáticamente.
Nota: Solo se admite
MediaBrowserServiceCompat
en la versión 24.0.0 compatible con versiones futuras de Android más allá de la API 24. Si usas versiones anteriores, actualiza a esta versión para para garantizar la compatibilidad. - Se agregó el
- Cambios para la v7 appcompat:
-
- Se agregó compatibilidad con objetos
ColorStateList
temáticos de XML
- Se agregó compatibilidad con objetos
- Cambios para la compatibilidad de diseño Biblioteca:
-
- Mejoras en
AppBarLayout
manejo de la elevación medianteStateListAnimator
- Mejoras en
- Cambios en la biblioteca Leanback de la versión 17:
-
- Se agregó
OnboardingFragment
para proporcionar la bienvenida de primera ejecución y flujo de configuración
- Se agregó
- Cambios para las pestañas personalizadas:
-
- Se agregó compatibilidad para proporcionar un
RemoteViews
. jerarquía de la barra de herramientas secundaria - Se agregó el
CustomTabsClient.connectAndInitialize()
para una preparación de una línea
- Se agregó compatibilidad para proporcionar un
Revisión 23.4.0
Mayo de 2016
- Cambios para la asistencia de la versión 4 Biblioteca:
-
- Se solucionó el problema por el cual se agregaban fragmentos en el orden incorrecto (Problema 206901).
- Se solucionó el problema por el que la barra de la app no se dibujaba después de que el usuario la desplazaba fuera de la pantalla. (Problema 178037).
- Cambios para la v7 appcompat:
-
- Agregado
AppCompatDelegate.setCompatVectorFromResourcesEnabled()
método para volver a habilitar el uso de elementos de diseño vectoriales en objetosDrawableContainer
en dispositivos con Android 4.4 (nivel de API 19) y versiones anteriores. Consulta AppCompat v23.2: la era de los vectores para obtener más información. - Se corrigió un problema en el nivel de API 23 con .
AppCompatDelegate.setDefaultNightMode()
no cargando los recursos correctos en el nivel de API 23. (Problema 206573). - Se corrigió el error que podía provocar
NullPointerException
. (Problema 207638).
- Agregado
- Cambios para la compatibilidad de diseño Biblioteca:
-
- Se solucionó un problema por el que
TextInputLayout
no borraba el error. ajuste de tono después desetErrorEnabled(false)
en el nivel de API 21 a 22 (problema 202829). - Se solucionó un problema por el que no se mostraba
FloatingActionButton
. cuando se inhabilitan las animaciones. (Problema 206416). - Se solucionó un problema en
AppBarLayout
. ajustar la funcionalidad cuando se usa con las marcas de desplazamiento
. (Problema 207398).scroll
|enterAlways
|enterAlwaysCollapsed
|snap
- Se solucionó un problema por el que
- Cambios de la biblioteca de elementos de diseño de vectores:
-
- Se corrigió un error por el que
VectorDrawableCompat
hace no se muestran correctamente enTextView
en el nivel de API 23. (Problema 206227).
- Se corrigió un error por el que
Revisión 23.3.0
Abril 2016
- Cambios para la asistencia de la versión 4 Biblioteca:
-
- Se agregó
AppLaunchChecker
para ayudar a hacer un seguimiento de cómo tu app si el usuario la inició en el pasado.hasStartedFromLauncher()
te permite saber si el usuario tiene ejecutaste tu app desde la pantalla de inicio antes o si solo se haya iniciado por otros medios (por ejemplo, para ver contenido URLs). - Se corrigió una fuga de memoria en
MediaBrowserServiceCompat.mConnections
(Problema 205220). - Se solucionó el problema por el que
ViewPager
. no considera los márgenes de las páginas al cambiar de página. (Problema 203816). - Se entregó
Fragment.onRequestPermissionsResult()
al niño o fragmentos.
- Se agregó
- Cambios para la v7 appcompat:
-
- Se solucionó un problema en
AppCompatSpinner
que podía provocar para que aparezcan varias ventanas emergentes. (Problema 205052). - Se corrigió un error en el color de los botones sin borde. (Problema 202967).
- Se solucionó un problema de compatibilidad entre
AppCompatDialogFragment
yAlertDialog
. (Problema 204805). - Se revirtieron los cambios a
TintResources
que estaban causando de memoria y de configuración. (Problema 205236).
- Se solucionó un problema en
- Cambios para la v7 biblioteca de mediarouter:
-
- Se corrigió
MediaRouteControllerDialog
. comportamiento del control deslizante del volumen. (Problema 202299).
- Se corrigió
- Cambios para la preferencia de la versión 7 biblioteca:
-
- Se solucionó un problema por el que
PreferenceFragmentCompat
fallaba. si se especificadividerHeight
. (Problema 204778).
- Se solucionó un problema por el que
- Cambios para la v7 Biblioteca de recyclerview:
-
- Se corrigió un error por el que
RecyclerView
no invocaba el desplazamiento. las devoluciones de llamada si se redujo el rango de elementos visibles. (Problema 200987). - Se corrigió un error por el que
RecyclerView
se bloqueaba si estuviera en lineal, se ponderó y contenía imágenes. (Problema 203276). - Se corrigió una falla en
OrientationHelper.getStartAfterPadding()
. (Problema 180521). - Se solucionó un fallo con el uso de
android:nestedScrollingEnabled
(Problema 197932).
- Se corrigió un error por el que
- Cambios para la compatibilidad de diseño Biblioteca:
-
- Se corrigió un error por el que una hoja inferior oculta controlaba el tacto eventos. (Problema 203654).
- Se solucionó un problema de diseño con
BottomSheetBehavior
que se producía cuandofitsSystemWindows
es verdadero. (Problema 203057). - Se solucionó un problema de accesibilidad con
Snackbar
. (Problema 182145). - Se corrigió una falla en
Snackbar
. deslizar. (Problema 203924). - Se corrigió un error en
AppBarLayout
conenterAlways
(Problema 203661). - Se corrigió un error por el que
TextInputLayout
se borraba innecesariamente. Filtro de color de fondo del objetoEditText
. (Problema 203357).
Revisión 23.2.1
marzo 2016
- Cambios para la asistencia de la versión 4 Biblioteca:
-
- Se corrigió una excepción en
DrawableCompat.wrap()
yLayerDrawable
en Niveles de API 17 a 19. (Problema 201817) - Se corrigió un
ArrayIndexOutOfBoundsException
enViewDragHelper.shouldInterceptTouchEvent()
(Problema 182262). - Se corrigió un error en
ViewPager
relacionado con el cálculo de desplazamiento para los cambios de tamaño. - Se corrigió un
NullPointerException
que ocurría cuando se llamaba aDrawerLayout.removeDrawerListener()
sin un conjuntoDrawerLayout.DrawerListener
. (Problema 202478) - Se corrigió un error por el que no se configuraba
ViewPager
. ParámetrosAccessibilityEvent
correctamente cuando te desplazas. - Se solucionó un problema que causaba un retraso durante la rotación del dispositivo cuando se usaba
Drawable.wrap()
(Problema 201924)
- Se corrigió una excepción en
- Cambios para la v7 appcompat:
-
- Se revirtió la dependencia de los recursos vectoriales para que los desarrolladores que usan el
appcompat
de compilación no se ven obligadas a usar
VectorDrawable
ni las marcas de compilación asociadas. - Se corrigió un problema de compatibilidad con el Modo nocturno y la API nivel 23. (Problema 2019 10).
- Se solucionó un problema de compatibilidad con
SwitchCompat
y la API nivel 7. (Problema 201942) - Se solucionó un problema con la propagación de valores de configuración en objetos Recursos Error 201928
- Se corrigió un problema de compatibilidad en el que
android.support.v7.app.NotificationCompat.MediaStyle
El botón Cancelar se vuelve invisible a nivel de la API. 21 o menos. (Problema 202156) - Se corrigió una falla de compatibilidad con
AppCompatSpinner
en la API nivel 21 o versiones anteriores. (Problema 202246) - Se solucionó un problema por el que no era posible el estilo
app:textAllCaps = "false"
. el trabajo. (Problema 202117) - Se corrigió una falla durante el restablecimiento de
SearchView
. (Problema 201836). - Se corrigió una fuga de memoria que se producía cuando se ajustaba el tono de los recursos de elementos de diseño usando AppCompat. (Problema 202379)
- Se corrigió un problema con
KeyEvent
en el nivel de API 11 y menor. (Problema 202939)
- Se revirtió la dependencia de los recursos vectoriales para que los desarrolladores que usan el
appcompat
de compilación no se ven obligadas a usar
- Cambios para la versión 7 de cardview biblioteca:
-
- Se agregó compatibilidad con el Modo nocturno para
CardView
. (Problema 194497).
- Se agregó compatibilidad con el Modo nocturno para
- Cambios para la v7 Biblioteca de recyclerview:
-
- Se corrigieron errores relacionados con varios métodos de measure-spec. (Problema 201856).
- Se redujo el período de bloqueo en el que
RecyclerView
no admite un adaptador. cambia mientras se calcula un diseño o un desplazamiento. (Problema 202046). - Se solucionó una falla cuando se llamaba a
notifyItemChanged()
en un elemento que estaba desactivado. (Problema 202136). - Se corrigió una falla que se producía cuando
RecyclerView.LayoutManager
agregaba y quitaba una vista en la misma pase de medición. (Problema 193958).
- Cambios para la v7 biblioteca de mediarouter:
-
- Se solucionó una falla que se producía cuando se llamaba a
MediaRouter.getInstance()
en la API nivel 17. (Problema 180654).
- Se solucionó una falla que se producía cuando se llamaba a
- Cambios para la versión 17 Biblioteca Leanback:
-
- Se solucionó un problema con
GridLayout.onAddFocusables()
que hizo que se seleccionara el elemento incorrecto. - Se solucionó un problema con las acciones de
GuidedStepFragment
. desaparece cuando se contrae una acción.
- Se solucionó un problema con
- Cambios para la compatibilidad de diseño Biblioteca:
-
- Se corrigió una falla de
TabLayout
. causado por la agrupación de pestañas. (Problema 201827). - Se corrigió un error en
NavigationView
que causaba el error color que se seleccionará. (Problema 201951). - Se corrigió un error por el que
setBackgroundTintList()
ya no podía cambiar el fondo. color. (Problema 201873). - Se solucionó un problema por el que
AppBarLayout
no se desplazaba por completo. fuera de la vista cuando se usa conandroid:fitsSystemWindows = “true”
. (Problema 2018-22). - Se solucionó un problema por el que no se mostraba
BottomSheetDialog
. vistas de contenido corto correctamente. (Problema 201793). - Se solucionó un problema por el que se movía
BottomSheetDialogFragment
. esporádicamente cuando se cambiaba el contenido de su interior. (Problema 202125). - Se corrigió una falla en el vínculo del contador TextInputLayout.
- Se corrigió una falla que ocurría cuando
TextInputLayout.getCounterMaxLength()
restablecía un estado guardado. (Problema 202375). - Se corrigió un
ClassCastException
que se producía cuando se restablecía unCoordinatorLayout
con el guardado de una vista que no eraCoordinatorLayout
.
- Se corrigió una falla de
- Cambios para VectorDrawableCompat:
-
- Se corrigió un error en el que se leía la variable incorrecta para
android:tintMode
. (Problema 201907).
- Se corrigió un error en el que se leía la variable incorrecta para
Revisión 23.2.0
Febrero 2016
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó
MediaBrowserCompat
para compatibilidad conMediaBrowser
yMediaBrowserServiceCompat
para compatibilidad conMediaBrowserService
. Esta información es útil cuando se conecta un servicio en segundo plano de una app multimedia con componentes de IU y la integración con Android Auto y Android Wear sin requerir Nivel de API 21 o versiones posteriores - El sistema ahora llama a
onActivityResult()
para obtener unFragmentActivity
anidada.
- Se agregó
- Cambios para AppCompat de la versión 7 biblioteca:
-
- Se agregó la funcionalidad del Modo nocturno a la API nivel 14 y versiones posteriores. Interruptor entre Material Temas claros y de material oscuro según la hora del día la configuración específica de la app.
-
- Los temas diurnos y nocturnos se pueden encontrar aquí:
<sdk>/extras/android/support/v7/appcompat/res/values/themes_daynight.xml
AppCompatDelegate.setDefaultNightMode()
: Establece la 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()
: Anulaciones la configuración del modo nocturno para el componente local de la app.AppCompatDelegate.getDefaultNightMode()
: Devuelve el modo nocturno predeterminado.
- Los temas diurnos y nocturnos se pueden encontrar aquí:
- Cambios para mediarouter v7 biblioteca:
-
MediaRouteControllerDialog
ahora aplica correctamente los colores del tema de la app personalizados.
- Cambios para la biblioteca de compatibilidad de diseño:
-
- Se agregó compatibilidad con la parte inferior
Hojas de cálculo. Un complemento de interacción,
BottomSheetBehavior
, permite que una vista secundaria de unCoordinatorLayout
actúe como una hoja inferior. La clase base,BottomSheetCallback
, proporciona devoluciones de llamada para supervisar eventos de hojas inferiores.
- Se agregó compatibilidad con la parte inferior
Hojas de cálculo. Un complemento de interacción,
- Cambios para la compatibilidad con CustomTabs biblioteca:
-
- Chrome Las pestañas personalizadas ahora permiten que las apps incluyan una barra inferior con acciones. además del botón de acción superior existente.
CustomTabsIntent.Builder.addToolBarItem()
: agrega una acción. en una pestaña personalizada. Puedes usar esta opción para agregar varios botones.CustomTabsSession.setToolBarItem()
: Actualiza los elementos visuales. para los elementos de la barra de herramientas. Este método solo tendrá éxito si se le da un un ID válido y la sesión del navegador está en primer plano.
- Se agregó una biblioteca de compatibilidad de VectorDrawable:
-
- Clases agregadas:
-
VectorDrawableCompat
AnimatedVectorDrawableCompat
- Se agregó compatibilidad con elementos
VectorDrawable
a las apps que se ejecutan en el nivel de API 7 o superior.AnimatedVectorDrawable
recursos también son compatibles con el nivel de API 11 o versiones posteriores. Los recursos vectoriales es mucho más pequeño que los recursos de imagen y debería ayudar a reducir reduciendo la cantidad de recursos necesarios para admitir varios pantallas de los dispositivos. - Ahora, esta biblioteca es una dependencia de la biblioteca AppCompat de la versión 7, lo que permite
para desarrolladores y AppCompat
para usar fácilmente elementos de diseño vectoriales. Para usar
VectorDrawableCompat
en unaImageButton
oImageView
, usa el XMLapp:srcCompat
atributo osetImageResource()
. - Para seguir haciendo referencia a los IDs de atributos en el nivel de API 20, o
inferior, agrega la siguiente marca
appt
a tu archivobuild,gradle
: -
- Si estás compilando con el complemento de Android para Gradle 1.5.0 o
inferior, 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 estás compilando con el complemento de Android para Gradle 2.0.0 o
en una versión superior, agrega lo siguiente a tu archivo
build.gradle
: -
android { defaultConfig { vectorDrawables.useSupportLibrary = true } }
- Si estás compilando con el complemento de Android para Gradle 1.5.0 o
inferior, agrega lo siguiente a tu archivo
- Cambios para Leanback v17 Biblioteca:
-
- Se agregaron nuevas capacidades a
GuidedStepFragment
, que es un componente que guía a los usuarios a través de una decisión o una serie de decisiones: -
- Se agregaron acciones de botones a
GuidedAction
: GuidedStepFragment.setButtonActions()
: establece una lista deGuidedAction
botones que que el usuario puede seleccionar en la vista Actions.- Los campos de descripción ahora son editables:
-
GuidedAction.Builder.descriptionEditable()
: cuando se pasatrue
, establece que la descripción de la acción sea editable.GuidedAction.getEditDescription()
: Muestra el elemento descripción comoCharSequence
.
- Se agregaron listas desplegables de subacciones:
-
GuidedAction.setSubActions()
: Establece una lista deGuidedAction
como menú desplegable. de subacciones.
- Se agregaron acciones de botones a
- Se agregó el widget
GuidedDatePickerAction
para la funcionalidadDatePicker
: -
- La fecha se selecciona mediante columnas de año, mes y día, y tiene una variedad personalizable.
GuidedDatePickerAction.Builder
: Es la clase compiladora para el objetoGuidedDatePickerAction
.GuidedDatePickerAction.Builder.datePickerFormat(String datePickerFormat)
: establece el formato de fecha deseado pasando el valor apropiadoString
de tres caracteres, p.ej.,“YMD”
o“MDY”
. También puedes usar el atributo XMLdatePickerFormat
.
- Se agregaron nuevas capacidades a
- Cambios para la versión 7 de RecyclerView biblioteca:
-
RecyclerView
ahora puede aceptar llamada AutoMeasure que permite queRecyclerView.LayoutManager
una fácilmente contenido o manejar varias especificaciones de medición proporcionadas por la superior deRecyclerView
. Integra es compatible con todas las capacidades de animación existentes deRecyclerView
.-
- Si tienes un
RecyclerView.LayoutManager
personalizado, llama asetAutoMeasureEnabled(true)
para comenzar a usar el nuevo API de AutoMeasure. Todos los objetosRecyclerView.LayoutManager
integrados habilitar la medición automática de forma predeterminada. RecyclerView.LayoutManager
ya no ignora algunos parámetros de configuración deRecyclerView.LayoutParams
, comoMATCH_PARENT
, en la dirección de desplazamiento.Nota: Estas restricciones que se eliminaron podrían provocar un comportamiento inesperado en tus diseños. Asegúrate de especificar los parámetros de diseño correctos.
- Si tienes un
- Cuando actualizas un
RecyclerView.ViewHolder
con carga útil información,DefaultItemAnimator
ahora inhabilita las animaciones de cambio. - Ahora puedes modificar la velocidad de escape de
ItemTouchHelper
para controlar la sensibilidad de deslizamiento. Para que sea más fácil o difícil deslizar el dedo, anulargetSwipeEscapeVelocity(float defaultValue)
y modificardefaultValue
Revisión 23.1.1
noviembre de 2015
- Cambios en la biblioteca de recyclerview de la versión 7:
-
- Se solucionó un bloqueo que se producía al realizar una acción de deslizar para descartar que
La clase de utilidad
ItemTouchHelper
proporciona y, luego, agrega un elemento. (Problema 190500)
- Se solucionó un bloqueo que se producía al realizar una acción de deslizar para descartar que
La clase de utilidad
- Cambios para la biblioteca de preferencias de la versión 7:
-
- Se solucionó un problema con el uso de ProGuard. (Problema 183261)
- Cambios en la biblioteca de compatibilidad de Leanback de la versión 17:
-
- Se corrigió una serie de problemas internos en esta biblioteca.
- Cambios para la biblioteca de compatibilidad de diseño:
-
- Se agregó el método
getHeaderView
a la claseNavigationView
. - Se corrigió un problema de fondo transparente para un objeto
FloatingActionButton
en dispositivos con Android 4.0 (nivel de API 15) y versiones anteriores. (Problema 183315)
- Se agregó el método
Revisión 23.1.0
octubre de 2015
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó compatibilidad con la interfaz
OnScrollChangedListener
a la WidgetNestedScrollView
. Integra te permite recibir devoluciones de llamada cuando cambian las posiciones de desplazamiento de X o Y. - Se agregó una clase
MediaButtonReceiver
para reenviar los controles de reproducción recibidos. a un servicio que administra la claseMediaSessionCompat
. El La claseMediaSessionCompat
tiene un que puede encontrar automáticamente un receptor de botones multimedia en el manifiesto. R El receptor de botones multimedia es un componente clave para controlar controles de reproducción de hardware o controles de Bluetooth.
- Se agregó compatibilidad con la interfaz
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se agregaron widgets
Seekbar
yImageButton
de Material Design. - Se actualizó el widget
ImageView
para admitir la función de ajuste de tono. - Se actualizó el aspecto del widget
SwitchCompat
.
- Se agregaron widgets
- Cambios en la biblioteca de mediarouter de la versión 7:
-
- Se agregaron las siguientes características a la clase
MediaRouteChooserDialog
: - Muestra una página de carga mientras se descubren proveedores de rutas de medios.
- Incluye un ícono de tipo de dispositivo para facilitar la identificación del dispositivo.
- Ordena las rutas según la frecuencia de uso en la app actual.
- Admite el modo de paisaje.
- Se agregaron las siguientes características a la clase
MediaRouteControllerDialog
: - Reconoce la transmisión de pantalla y proporciona una descripción adecuada.
- Admite distintos tamaños y proporciones de imágenes de álbum, y las carga de manera asíncrona.
- Selecciona automáticamente el color del contenido en función del color principal de la app.
- Ajusta el diseño del cuadro de diálogo en función del espacio disponible en la pantalla del dispositivo.
- Admite el modo de paisaje.
- Se agregaron las siguientes características a la clase
- Cambios en la biblioteca de paletas de la versión 7:
-
- Se agregó el método
setRegion()
para admitir la extracción de color de un elemento región de un objetoBitmap
.
- Se agregó el método
- Cambios en la biblioteca de recyclerview de la versión 7:
-
- Se agregó una API de Animation mejorada a la clase
ItemAnimator
para mejorar la personalizaciones: - Las animaciones de cambio ya no aplican dos copias del objeto
ViewHolder
que habilita animaciones de contenido de elementos. Además, el objetoItemAnimator
decide si quiere reutilizar el mismo objetoViewHolder
o crear un uno nuevo. - La nueva API de registro de información le brinda a la clase
ItemAnimator
la flexibilidad. para recopilar datos en el punto correcto del ciclo de vida de diseño. Esta información aparece más adelante. se pasan a las devoluciones de llamada de animación.
- Se proporcionó un plan de transición sencillo para este cambio de API incompatible con versiones anteriores:
- Si ya extendiste la clase
ItemAnimator
, puedes cambiar tu clase base aSimpleItemAnimator
, y tu código debería funcionar como antes. La claseSimpleItemAnimator
proporciona la API anterior mediante la agrupación de la API nueva. - Se quitaron algunos métodos de la clase
ItemAnimator
. Lo siguiente dejará de compilarse el siguiente código:
Kotlin
recyclerView.itemAnimator.supportsChangeAnimations = false
Java
recyclerView.getItemAnimator().setSupportsChangeAnimations(false)
Puedes reemplazarlo con lo siguiente:
Kotlin
val animator: SimpleItemAnimator? = recyclerView.itemAnimator as? SimpleItemAnimator animator?.supportsChangeAnimations = false
Java
ItemAnimator animator = recyclerView.getItemAnimator(); if (animator instanceof SimpleItemAnimator) { ((SimpleItemAnimator) animator).setSupportsChangeAnimations(false); }
- Se agregó una API de Animation mejorada a la clase
- Cambios para la versión 7, v14 y Biblioteca de compatibilidad de preferencias v17:
-
- Se quitaron las API para controlar los cuadros de diálogo de
EditText
.
- Se quitaron las API para controlar los cuadros de diálogo de
- Cambios en la biblioteca de compatibilidad de Leanback de la versión 17:
-
- Se agregó una versión de la clase
GuidedStepFragment
para la biblioteca de compatibilidad. (se extiendeandroid.support.v4.app.Fragment
) y mejoras en las animaciones y las transiciones. - Se actualizó la clase
GuidedStepFragment
para que se pueda colocar encima de contenido existente. - Se agregó la capacidad de anotar diferentes tipos de finalizaciones de búsquedas en el
Clase
SearchFragment
. - Se agregó compatibilidad con la transición escalonada de deslizamiento a
VerticalGridFragment
. .
- Se agregó una versión de la clase
- Cambios para la biblioteca de compatibilidad de diseño:
-
- Se agregó
compatibilidad con el recuento de caracteres al widget
TextInputLayout
- Se agregó compatibilidad con el ajuste de bordes a la clase
AppBarLayout
agregando el elementoSCROLL_FLAG_SNAP
constante. Cuando finaliza el desplazamiento, si la vista solo parcialmente visible, la vista se ajusta y se desplaza hasta su borde más cercano. - Se agregó compatibilidad con vistas personalizadas a la clase
NavigationView
mediante el elemento Atributoapp:actionLayout
oMenuItemCompat.setActionView()
.
- Se agregó
compatibilidad con el recuento de caracteres al widget
- Cambios para la biblioteca de compatibilidad de pestañas personalizadas:
-
- Se agregó el método
enableUrlBarHiding()
aCustomTabsIntent
. . Permite al cliente personalizar si la barra de URL debe ocultarse automáticamente cuando te desplazas hacia abajo. - Se agregó el método
setActionButton()
aCustomTabsSession
. . Le permite al cliente cambiar el ícono por un botón de acción personalizado en una pestaña personalizada ya iniciada. - Se agregaron las constantes
TAB_SHOWN
yTAB_HIDDEN
como eventos nuevos para el métodoonNavigationEvent
deCustomTabsCallback
.
- Se agregó el método
Revisión 23.0.1
septiembre de 2015
- Cambios para la versión 7 y Biblioteca de compatibilidad de preferencias v14:
-
- Se agregaron los archivos de estilo y el diseño de Material Design. (Problema 183376)
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se corrigieron problemas de fallas de la clase
Fragment
limitando el uso de de hardware hasta Android 4.1 (nivel de API 16) y versiones posteriores. (Problema 183896) - Se solucionó un problema por el que los botones de hardware no funcionaban cuando una actividad había establecido la
Toolbar
para que actúe comoActionBar
con el métodosetSupportActionBar()
(Problema 183334) - Se actualizó la clase
AppCompatDialogFragment
para que ya no lanza elWindows feature must be requested before adding content
. (Problema 183186)
- Se corrigieron problemas de fallas de la clase
- Cambios para la biblioteca de compatibilidad de diseño:
-
- Corregimos el
AppBarLayout
para que se dibuje correctamente después y la rotación de claves. (Problema 183109) - Corregimos el
TabLayout
para que ahora se comporte correctamente cuando se el usuario hace clic después de deslizar el dedo. (Problema 183123)
- Corregimos el
- Cambios para la biblioteca de compatibilidad de pestañas personalizadas:
-
- Se bajó el
minSdkVersion
de 16 a 15 para compatibilidad con la versión. - Se agregó una forma de generar un
CustomTabsSessionToken
a partir de un intent.
- Se bajó el
Revisión 23
agosto de 2015
- Se agregaron nuevas bibliotecas de compatibilidad:
-
- Biblioteca de compatibilidad de pestañas personalizadas
- Biblioteca de compatibilidad porcentual
- Biblioteca de compatibilidad con recomendaciones de apps para TV
- Biblioteca de compatibilidad de preferencias de la versión 7
- Biblioteca de compatibilidad de preferencias de la versión 14
- Biblioteca de compatibilidad de preferencias de la versión 17 para TV
Para obtener una lista completa de los cambios de la biblioteca de compatibilidad, consulta la Asistencia Informe de diferencias de las APIs de Biblioteca.
Revisión 22.2.1
julio de 2015
- Cambios para la biblioteca de compatibilidad de diseño:
-
- Se agregaron los métodos
hide()
yshow()
al archivo ClaseFloatingActionButton
para transacciones programáticas activación de animaciones. - Se agregó la constante
LENGTH_INDEFINITE
al ClaseSnackbar
para mostrar una barra de notificaciones hasta que se descarte o se muestre otra barra de notificaciones. Además, se agregó elsetActionTextColor(int)
ysetActionTextColor(ColorStateList)
. - Se agregó el método
getSelectedTabPosition()
al ClaseTabLayout
para recuperar el valor pestaña seleccionada. - Se proporcionó una API completamente fluida para la
Clase
android.support.v7.app.NotificationCompat.MediaStyle
para el método el encadenamiento. - Se agregaron métodos de conveniencia a la
RecyclerView
para la inserción por lotes de elementos.
- Se agregaron los métodos
Para obtener una lista completa de los cambios de la biblioteca de compatibilidad, consulta la Asistencia Informe de diferencias de las APIs de Biblioteca.
Revisión 22.2.0
mayo de 2015
- Se agregó la biblioteca de compatibilidad de diseño:
-
- Se agregó
TextInputLayout
para que se muestre Texto de error y sugerencia deEditText
como etiquetas flotantes. - Se agregó
FloatingActionButton
para implementar un acción principal en tu interfaz como botón de acción flotante, que admite tamaños predeterminados o mini. - Se agregó
Snackbar
para proporcionar elementos ligeros. comentarios con una acción opcional en una barra de notificaciones animada. - Se agregó
TabLayout
para implementar configuraciones fijas y desplazable pestañas así como integración conViewPager
- Se agregó
NavigationView
para implementar panel lateral de navegación su contenido, incluida la capacidad de ampliar los elementos del menú con una Recurso de menú. - Se agregó
CoordinatorLayout
, un producto de uso general. de Terraform, que se usa para crear dependencias entre del mismo nivel y permitir reacciones de desplazamiento sencillas entre componentes medianteCoordinatorLayout.Behavior
Muchos de los pasos Los componentes de la biblioteca dependen de ser elementos secundarios de unCoordinatorLayout
- Se agregó
AppBarLayout
, un contenedor para unaToolbar
y otras vistas (comoTabLayout
) para Reaccionar a los eventos de desplazamiento deslizando el dedo fuera de la pantalla, volviéndose visible en reacción hasta un desplazamiento hacia abajo o que se contraiga o se abra antes de desplazarse hacia afuera o adentro de la pantalla. - Se agregó
CollapsingToolbarLayout
para controlar. cómo se contrae unToolbar
. Una barra de herramientas se puede contraer de la siguiente manera: fijar componentes en la parte superior de la pantalla mientras se contrae, introduciendo desplazamiento con paralaje de componentes comoImageView
o agregar un color de lámina de contenido cuando la vista se contrae parcialmente.
- Se agregó
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó el
getContentChangeTypes()
ysetContentChangeTypes()
métodos y tipo de cambio relacionado campos alAccessibilityEventCompat
para el manejo de eventos de accesibilidad. - Se agregó el
getActiveQueueItemId()
,getCustomActions()
, ygetExtras()
métodos con campos de estado relacionados con el ClasePlaybackStateCompat
para obtener acciones personalizadas de la cola. - Se agregó el
addCustomAction()
,setActiveQueueItemId()
, ysetExtras()
métodos a la ClasePlaybackStateCompat.Builder
para agregar acciones personalizadas a un estado de reproducción. - Se agregó el
fromCustomAction()
ygetCustomAction()
métodos al ClasePlaybackStateCompat.CustomAction
para obtener acciones personalizadas de la cola. - Se agregó
isAttachedToWindow()
,offsetLeftAndRight()
yoffsetTopAndBottom()
a la claseViewCompat
para trabajar con vistas. - Se agregó
addOnPageChangeListener()
,clearOnPageChangeListeners()
yremoveOnPageChangeListener()
métodos a la claseViewPager
para responder a la página cambios.Se dio de baja el
ViewPager.setOnPageChangeListener()
. - Se agregó el
notifySubtreeAccessibilityStateChanged()
para la claseViewParentCompat
para notificar a un elemento superior de vista que cambió el estado de accesibilidad de uno de sus elementos subordinados. - Se agregó
translationZ()
,translationZBy()
,z()
yzBy()
métodos a la claseViewPropertyAnimatorCompat
para agregando animación.
- Se agregó el
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se agregó el
onWindowStartingSupportActionMode()
método deAppCompatActivity
,AppCompatCallback
y ClasesAppCompatDialog
para controlar los modos de acción iniciar desde la ventana actual. - Se agregó el
isHandleNativeActionModesEnabled()
ysetHandleNativeActionModesEnabled()
métodos a la ClaseAppCompatDelegate
para controlar los modos de acción nativos
- Se agregó el
Para obtener una lista completa de los cambios de la biblioteca de compatibilidad, consulta la Asistencia Informe de diferencias de las APIs de Biblioteca.
Revisión 22.1.0
abril de 2015
- Cambios para la biblioteca de anotaciones:
-
- Se agregó la biblioteca de anotaciones para brindar compatibilidad con las inspecciones de código mejoradas. Las anotaciones se agregan como etiquetas de metadatos que adjuntas a las variables, los parámetros y mostrar valores para inspeccionar los valores que se devuelven de los métodos, los parámetros pasados y los valores variables y campos.
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó la clase
ColorUtils
para proporcionar un conjunto de métodos de utilidad relacionados con colores. - Se agregaron
unwrap()
y métodoswrap()
al ClaseDrawableCompat
, lo que te permite usarsetTint()
,setTintList()
, ysetTintMode()
en todos los dispositivos con nivel de API 4 o superior. - Se agregó la clase
TraceCompat
a escribir eventos de seguimiento en el búfer de registro del sistema, que luego pueden recopilarse y visualizados con la herramienta Systrace. - Se agregó la clase
CircularIntArray
para crear estructuras de datos de array de números enteros circulares. - Se agregó
clear()
,removeFromStart()
, yremoveFromEnd()
métodos a la claseCircularArray
. Además, se modificó el los métodos existentes en esta clase no sean definitivos. - Se agregó
InputDeviceCompat
como clase auxiliar para acceder a los datos del ClaseInputDeviceCompat
. - Se agregó
LayoutInflaterCompat
como clase auxiliar para acceder a los datos del ClaseLayoutInflaterCompat
y agregaste la interfazLayoutInflaterFactory
. - Se agregaron clases, interfaces y métodos para admitir desplazamiento anidado.
- Se agregó
NestedScrollingChildHelper
yNestedScrollingParentHelper
. clases auxiliares para implementar vistas primarias y secundarias de desplazamiento anidadas. - Se agregó
NestedScrollingChild
que implementarán las subclasesView
. - Se agregó
NestedScrollingParent
yScrollingView
para admitir y proporcionan APIs relacionadas con el desplazamiento. - Se agregó el
getNestedScrollAxes()
aViewGroupCompat
. - Se agregaron métodos a la clase
ViewParentCompat
para admite desplazamiento anidado. - Se agregó
NestedScrollView
para admitir el elemento superior y el secundario de desplazamiento anidado en las versiones nuevas y anteriores de Android
- Se agregó
- Se agregaron métodos y constantes a
MotionEventCompat
. para obtener los valores de los ejes y la fuente del evento. - Se actualizó
AccessibilityNodeInfoCompat
para agregar métodos para errores, invalidación de contenido y etiquetas. - Se agregaron las siguientes clases de interpolación para la animación:
FastOutLinearInInterpolator
,FastOutSlowInInterpolator
,LinearOutSlowInInterpolator
,LinearOutSlowInInterpolator
yPathInterpolatorCompat
- Se agregó la clase
Space
para crear espacios entre componentes en diseños de uso general. Esta clase ya no está disponible en la biblioteca de gridlayout. - Se agregó la clase
TextViewCompat
para acceder. en unTextView
. - Se agregó un parámetro de desplazamiento al
onPull()
en la ClaseEdgeEffectCompat
.
- Se agregó la clase
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se agregó compatibilidad con tonos a los widgets de appcompat, lo que incluye
AppCompatAutoCompleteTextView
,AppCompatButton
,AppCompatCheckBox
,AppCompatCheckedTextView
,AppCompatEditText
,AppCompatMultiAutoCompleteTextView
,AppCompatRadioButton
,AppCompatRatingBar
,AppCompatSpinner
yAppCompatTextView
- Se actualizó
AppCompatActivity
como base para actividades que usan las funciones de la barra de acciones de la biblioteca de compatibilidad. Esta clase reemplaza elActionBarActivity
obsoleto. - Se agregó el
Interfaz de
AppCompatCallback
para que AppCompat pueda realizar devoluciones de llamada. - Se agregó el
Clase abstracta
AppCompatDelegate
Como delegado, puedes usar para ampliar la compatibilidad de AppCompat con cualquier actividad. - Se agregó el
Clase
AppCompatDialog
como la clase base para los diálogos de AppCompat. - Se agregó el estilo de ícono giratorio
AlertDialog
y ClasesAlertDialog.Builder
para proporcionar un elemento AppCompat con temaAlertDialog
. - Se agregó la clase
Palette.Builder
para generarPalette
instancias.- Se agregó el
from(Bitmap)
a la clasePalette
para comenzar a generar una paleta con los atributos InstanciaPalette.Builder
. - Se dieron de baja
Palette.generate()
yPalette.generateAsync()
.
- Se agregó el
- Se agregó el
getAbsoluteAlignment()
aGridLayout.Spec
. - Se dio de baja el uso de
app:theme
para diseñar estilosToolbar
Ahora puedes usarandroid:theme
para barras de herramientas en todos los dispositivos con nivel de API 7 y versiones posteriores Compatibilidad conandroid:theme
para todos los widgets en dispositivos con nivel de API 11 y versiones posteriores
- Se agregó compatibilidad con tonos a los widgets de appcompat, lo que incluye
- Cambios en la biblioteca Leanback de la versión 17:
-
- Se agregó
GuidedStepFragment
,GuidanceStylist
yGuidedActionsStylist
al servicio de asistencia crear flujos de decisión de varios pasos.
- Se agregó
- Cambios en la biblioteca de recyclerview de la versión 7:
-
- Se agregaron clases
SortedList
para mostrar elementos en un orden de lista y notificar los cambios que se realicen en ella. - Se agregó la clase
SortedListAdapterCallback
que pueden vincular una lista ordenada a una ClaseRecyclerView.Adapter
.
- Se agregaron clases
- Cambios en la biblioteca de renderscript de la versión 8:
-
- Se agregó la clase
ScriptIntrinsicHistogram
para usar como filtro de histograma. - Se agregó la clase
ScriptIntrinsicResize
para realizar un cambio de tamaño de una asignación 2D.
- Se agregó la clase
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se actualizó el método
getDrawable()
para mostrar un objeto de elemento de diseño para un ID de recurso específico especificado. la densidad de la pantalla y el tema. - Se agregó el método
setImportantForAccessibility()
para que puedas indicar si se debe activar una vista eventos de accesibilidad. - Se agregó el método
getStatusBarBackgroundDrawable()
para que puedas obtener el fondo de la barra de estado elemento de diseño. - Se agregaron métodos al
NotificationCompat.CarExtender.UnreadConversation
para que las apps de mensajería de Android Auto puedan recuperar datos de notificaciones adicionales. - Se agregó el método
getProgressCircleDiameter()
para mostrar el diámetro de un diseño circular. - Se cambió el
DrawerLayout
predeterminado color de la barra de estado acolorPrimaryDark
.
- Se actualizó el método
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se agregó el estilo de ícono giratorio
Base_Widget_AppCompat_Spinner_Underlined
- Estilos de widgets en los que se aplicó color con
Widget_AppCompat_AutoCompleteTextView
,MultiAutoCompleteTextView
,TextAppearance_AppCompat_Button
yBase_Widget_AppCompat_RatingBar
- Se agregó el estilo de ícono giratorio
- Cambios en la biblioteca Leanback de la versión 17:
-
- Se agregaron
getRecycledPoolSize()
y MétodossetRecycledPoolSize()
para permitir tamaños de grupos reciclados y personalizados. - Se agregó el atributo
WRAP_CONTENT
al configuración de ancho de diseño para admitir contenido ajustado para íconos de título. - Se definió
R.transition
en XML para para mejorar las actualizaciones de la transición. - Compatibilidad habilitada para diseños de derecha a izquierda.
- Se agregó compatibilidad con los eventos clave de reproducción y pausa de contenido multimedia al
Clase
PlaybackOverlayFragment
. - Se agregaron las transiciones de entrada y devolución al
Clase
BrowseFragment
y ClaseDetailsFragment
. - Se agregó el método
replace()
para reemplazar elementos en la matriz de adaptador de un objeto.
- Se agregaron
- Cambios en la biblioteca de mediarouter de la versión 7:
-
- Se actualizaron los íconos de Google Cast para usar las estilo de Material Design.
- Se actualizaron todos los íconos utilizados en los diálogos de
MediaRouter
para usar los estilo de Material Design.
- Cambios en la biblioteca de recyclerview de la versión 7:
-
- Se agregó
getlayoutPosition()
ygetadapterPosition()
aRecyclerView
. - Se dieron de baja
classgetChildPosition()
y métodosfindViewHolderForPosition()
en la ClaseRecyclerView
. - El método
getPosition()
dejó de estar disponible en ClaseRecyclerView.ViewHolder
. - El método
getViewPosition()
dejó de estar disponible en ClaseRecyclerView.LayoutParams
.
- Se agregó
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregaron varios
NotificationCompat.WearableExtender
para mejorar la visualización de códigos de barras en las notificaciones de dispositivos wearable.
- Se agregaron varios
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó el
NotificationCompat.CarExtender
para admitir las extensiones de Android Auto a las notificaciones.
- Se agregó el
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se agregó el constructor
PopupMenu
para admitir las nuevas ventanas emergentes. menús. - Se agregó compatibilidad con una descripción del ícono de contraer en
Toolbar
. . - Se actualizó el widget
SearchView
para admitir la visualización.commitIcon
- Se quitó el atributo
buttonGravity
de ClaseToolbar
.
- Se agregó el constructor
- Cambios para la biblioteca de cardview de la versión 7:
-
- Se agregó la API de
setCardBackgroundColor(ColorStateList)
a Se admite el cambio del color de fondo deCardView
. - Se cambió
CardView
para informar con mayor precisión su de opacidad comoTRANSLUCENT
.
- Se agregó la API de
- Cambios para la versión 7 de recyclerview biblioteca:
-
- Se agregaron
TOUCH_SLOP_DEFAULT
y Constantes deTOUCH_SLOP_PAGING
a la claseRecyclerView
para admitir configuraciones de margen táctil para paginación.
- Se agregaron
- Cambios en la biblioteca Leanback de la versión 17:
-
- Se agregó compatibilidad para generar fragmentos de código de la versión 4.
- Se cambió el color del texto secundario en
CardView
.
- Agregado multidex para admitir varias Archivos Dalvik Executable (DEX) para admitir archivos multidex anteriores a Android 5.0.
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó compatibilidad con
Fragment
para dispositivos con Android 5.0 (nivel de API 21). Ten en cuenta que las transiciones no tienen efecto en los dispositivos que se ejecutan Android 4.4 y versiones anteriores. - Se agregó
DocumentFile
para facilitar la transición deFile
mientras trabajas con árboles de documentos. Sin embargo, esta clase exige más de sobrecarga de procesamiento en comparación con los recursos Se agregóDocumentsContract
API en Android 4.4 (nivel de API 19) Por lo tanto, debes usarDocumentsContract
cuando se ejecuta en Android 4.4. y versiones posteriores.
- Se agregó compatibilidad con
- Cambios para la versión 7 de appcompat biblioteca:
-
- Se agregó compatibilidad con material de diseño.
- Se agregó
Toolbar
, que generaliza la funcionalidad deActionBar
para usar dentro de diseños de aplicaciones. - Actualizado el
ActionBarDrawerToggle
, que contiene la animación de menú a flecha - Se actualizaron los widgets comunes de la interfaz de usuario para permitir el ajuste de tono a través del tema. atributos cuando se ejecuta en dispositivos con versiones anteriores a Android 5.0
- Se agregó
SwitchCompat
, un backport del widgetSwitch
que se agregó en Android 4.0 (nivel de API 14)
- Nueva biblioteca de cardview de la versión 7:
-
- Se agregó el widget
CardView
, que proporciona una implementación compatible con Material Design para mostrar en los elementos de datos.
- Se agregó el widget
- Nuevo recyclerview de la versión 7 biblioteca:
-
- Se agregó el widget
RecyclerView
, que proporciona una vista de lista flexible para brindar un período limitado en un gran conjunto de datos.
- Se agregó el widget
- Nueva biblioteca de paletas versión 7:
-
- Se agregó la clase
Palette
, que te permite extraer colores prominentes de una imagen.
- Se agregó la clase
- Nueva biblioteca de leanback de la versión 17:
-
- Se agregó compatibilidad para crear interfaces de usuario de TV, lo que incluye
BrowseFragment
,DetailsFragment
yPlaybackOverlayFragment
Para obtener más información sobre el uso de estos widgets de interfaz de usuario, consulta Cómo construir TVs Apps de reproducción
- Se agregó compatibilidad para crear interfaces de usuario de TV, lo que incluye
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó compatibilidad con notificaciones extendidas para Android Wear en
NotificationCompat.WearableExtender
, que te permite para especificar funciones específicas de wearables en tus notificaciones. - Se agregó
NotificationCompat.Action.WearableExtender
, que permite agregar acciones en notificaciones de wearables. - Se agregó
NotificationManagerCompat
, lo que te permite para emitir notificaciones que admitan adecuadamente las funciones de wearables. - Se agregó
RemoteInput
, que permite un dispositivo de mano. para recibir la entrada de voz de una notificación que aparece en un dispositivo wearable. - Se mejoró el manejo de la respuesta táctil en
SwipeRefreshLayout
- Se agregó compatibilidad con notificaciones extendidas para Android Wear en
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó la clase
SwipeRefreshLayout
, que permite a los usuarios actualizar el contenido de una vista con una gesto de deslizamiento. - Se solucionaron problemas de accesibilidad con los paneles laterales de navegación.
- Se agregó la clase
- Cambios para la biblioteca de appcompat de la versión 7:
-
- Se corrigieron problemas de fondo con la barra de acción.
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se mejoró
PrintHelper
agregando asíncrono y el manejo de las impresiones. - Se corrigió la aproximación de clase
DrawerLayout
deaddChildrenForAccessibility()
. - Se corrigió la duplicación de elementos de diseño de deslizamiento en
ActionBarDrawerToggle
. - Se solucionó el problema de error por un paso que ocurre cuando se quita un elemento de un iterador de grupo.
- Se mejoró
- Cambios en la biblioteca de mediarouter de la versión 7:
-
- Se mejoró la identificación de la ruta con el uso de nombre completo del componente en
MediaRouteProvider.ProviderMetadata
. - Se actualizó
MediaRouteChooserDialog
para ocultar elementos inhabilitados rutas.
- Se mejoró la identificación de la ruta con el uso de nombre completo del componente en
- Cambios en la biblioteca de renderscript de la versión 8:
-
- Se agregó propagación de error para la capa de invocación de RenderScript.
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó compatibilidad con las APIs de Storage externas con el
getObbDirs()
,getExternalFilesDirs()
,getExternalCacheDirs()
, ygetStorageState()
. Estos métodos auxiliares siempre devuelven un único objeto de archivo en dispositivos que ejecutan Android. 4.3 (nivel de API 18) y versiones anteriores Cuando se ejecuta en Android 4.4 (nivel de API 19) y versiones posteriores, estos métodos pueden mostrar más de un objeto de archivo. - Se agregó la clase
PrintHelper
que funciona con el Print API para imprimir imágenes con un mínimo de código - Se agregó compatibilidad con la interfaz de usuario de arrastrar para abrir en menús emergentes. Para obtener más información, consulta
PopupMenuCompat
yListPopupWindowCompat
- Mejor compatibilidad de accesibilidad con la incorporación de un
Método
findFocus()
enAccessibilityNodeProviderCompat
y las MétodogetLiveRegion()
enAccessibilityNodeInfoCompat
- Se agregó la clase auxiliar
ScaleGestureDetectorCompat
para acceder a nuevos métodos de gestos de escalamiento. - Se corrigió un problema con
ActionBarDrawerToggle
en se muestra un idioma de derecha a izquierda. - Se modificó la opción de
AutoScrollHelper
para consumir táctiles o permitir que pasen a través de otras vistas.
- Se agregó compatibilidad con las APIs de Storage externas con el
- Cambios en la biblioteca de mediarouter de la versión 7:
-
- Se agregó compatibilidad con la puesta en cola de reproducción de contenido multimedia, la configuración de valores de encabezado HTTP y contenido multimedia. la duración de la reproducción.
- Se agregaron acciones explícitas de inicio, obtención y finalización de sesión para administrar el contenido multimedia de forma explícita. sesiones de reproducción con el router de contenido multimedia.
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Interfaz de usuario
- Se agregó
BidiFormatter
para el control. cadenas de texto que combinan texto con formato de derecha a izquierda e izquierda a derecha. - Se modificó
ViewPager
para manejar mejor los casos en los que la El carrusel tiene un ancho medido de cero durante el procesamiento de diseño inicial. - Se modificaron
DrawerLayout
ySlidingPaneLayout
para no arrojar excepciones para mientras se edita el código del proyecto.
- Se agregó
- Accesibilidad
- Se agregó
ExploreByTouchHelper
para simplificar la implementación de accesibilidad para vistas personalizadas. - Se corrigió un problema incorrecto con
ViewPager
. Se propaganTYPE_VIEW_SCROLLED
eventos de accesibilidad. - Se corrigió una excepción de puntero nulo en
ViewPager
cuando se producía completar un evento de accesibilidad. AccessibilityNodeInfoCompat
simplificado Para ello, cambia las entradasCharSequence
por objetosString
.- Se dio de baja un
AccessibilityRecordCompat
que usaba unObject
como entrada.
- Se agregó
- Medios de comunicación
- Se agregó la clase auxiliar
TransportMediator
para administrar control de transporte multimedia, como reproducir, pausar, omitir y otras acciones multimedia. - Se agregó
DisplayManagerCompat
para administrar mostrar la salida a una o más pantallas del dispositivo.
- Se agregó la clase auxiliar
- Otros cambios
- Se agregó la clase auxiliar
WakefulBroadcastReceiver
para implementar un patrón común de detección de un evento de activación del dispositivo y transferir trabajo a unService
y, al mismo tiempo, garantizar que el dispositivo no vuelva a dormir antes de que se complete la transferencia. - Se agregaron dos APIs nuevas,
commitContentChanged()
yrollbackContentChanged()
, aAsyncTaskLoader
para ayudan a gestionar actualizaciones en segundo plano de cambios de datos que posteriormente se cancelan.
- Se agregó la clase auxiliar
- Interfaz de usuario
- Nueva biblioteca de appcompat de la versión 7:
- Nueva biblioteca de mediarouter de la versión 7:
-
Se agregó una nueva biblioteca de mediarouter que admite la vista previa para desarrolladores de Google Cast. Las mediarouter library API v7 proporcionan un medio para controlar el enrutamiento de canales multimedia y transmisiones desde el dispositivo actual a pantallas externas, bocinas y otros dispositivos de destino, compatibles con Android 2.1. (nivel de API 7). Consultar la versión 7 mediarouter biblioteca para obtener más información.
Las APIs de la biblioteca mediarouter v7 introducidas en la compatibilidad La biblioteca r18 está sujeta a cambios en revisiones posteriores de la Asistencia. Biblioteca. En este momento, recomendamos usar la biblioteca solo en conexión con el navegador Google Cast Versión preliminar para desarrolladores
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó
DrawerLayout
para crear un Navegación Panel lateral que se puede extraer desde el borde de una ventana. - Se agregó el widget
SlidingPaneLayout
para crear vínculos de resumen y detalles que se adaptan adecuadamente a varios tamaños de pantalla. - Se agregó
ActionBarDrawerToggle
como forma de vincular las funciones deDrawerLayout
yActionBar
. - Se agregó
ViewDragHelper
como un nuevo componente común. para arrastrar vistas dentro de una vista superior. - Se agregó
ScrollerCompat
para proporcionar compatibilidad conScroller
yOverScroller
. - Se agregó
FileProvider
para permitir el uso compartido archivos entre aplicaciones. - Se actualizó
ViewPager
para arrojar una excepción si el elemento la clasePagerAdapter
asociada se modifica sin un llamada anotifyDataSetChanged()
. - Se solucionó un problema con el orden de dibujo de elementos secundarios
ViewPager
. en el orden personalizado. - Se corrigió
GestureDetectorCompat
para que falte el envío.onSingleTapConfirmed(MotionEvent)
de llamadas entre el tiempo de espera del toque y los eventos de mantener presionado.
- Se agregó
- Nueva biblioteca de gridlayout de la versión 7:
-
- Se agregó
GridLayout
para brindar compatibilidad con el Objeto de diseñoGridLayout
. - Se agregó
android.support.v7.widget.Space
, que se puede usar para crear áreas en blanco dentro de un objeto de diseñoGridLayout
.
- Se agregó
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se mejoró el comportamiento de interacción para
ViewPager
. - Se corrigió un error que podía hacer que
ViewPager
seleccionara el página incorrecta. - Se corrigió el uso del método
removeView()
. durante el diseño deViewPager
. - Se solucionó un problema relacionado con
SearchViewCompat
por el que se usaba el botón Atrás para descartar no borra el texto de búsqueda. Esta corrección solo se aplica a API de host del nivel 14 o superior.
- Se mejoró el comportamiento de interacción para
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Interfaz de usuario
- Se agregó compatibilidad para clases
Fragment
anidadas. - Se agregaron mejoras a la depuración de
FragmentManager
. - Se solucionó el problema en
FragmentTabHost
por el que el fragmento y la interacción de las pestañas puede generar una pérdida de estadoListView
. - Se solucionó el problema con la sugerencia visible para el usuario en
FragmentStatePagerAdapter
- Se agregó el
PageTransformer
de entrada aViewPager
para permitir que las aplicaciones brindan un comportamiento de transición personalizado para el desplazamiento. - Se agregaron funciones y correcciones nuevas a
TaskStackBuilder
. de la versión actual. - Se corrigió
PagerTitleStrip
para hacer un seguimiento correcto delPagerAdapter
está en uso actualmente. - Se corrigieron problemas de parpadeo, posicionamiento y recorte de texto de la pantalla con
PagerTitleStrip
- Se corrigió
PagerTabStrip
para respetar el relleno de forma correcta. al dibujar un subrayado.
- Se agregó compatibilidad para clases
- Accesibilidad
- Se agregó compatibilidad con nuevos tipos de gestos y eventos táctiles de accesibilidad en
AccessibilityEventCompat
- Se agregó compatibilidad con nuevas APIs de accesibilidad en
ViewCompat
- Se agregó compatibilidad con el método
performAccessibilityAction()
aViewCompat
.
- Se agregó compatibilidad con nuevos tipos de gestos y eventos táctiles de accesibilidad en
- Se agregó compatibilidad con gestos con
GestureDetectorCompat
. - Se agregó compatibilidad para realizar operaciones atómicas en archivos usando un nuevo
Clase
AtomicFile
. - Se agregó compatibilidad con el conjunto completo de métodos
make
enIntentCompat
- Se agregó el método
trimToSize()
en Clase de utilidadLruCache
. - Se actualizó
ConnectivityManagerCompat
para obtener NetworkInfo desde unCONNECTIVITY_ACTION
transmisión.
- Interfaz de usuario
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó compatibilidad para las funciones de notificación introducidas en Android 4.1 (nivel de API 16) con
adiciones a
NotificationCompat
.
- Se agregó compatibilidad para las funciones de notificación introducidas en Android 4.1 (nivel de API 16) con
adiciones a
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Compatibilidad con interfaz de usuario
- Se agregó compatibilidad con
PagerTabStrip
, que proporciona compatibilidad mejorada funcionalidad más allá dePagerTitleStrip
. - Se corrigieron varios errores de
PagerTitleStrip
yPagerTabStrip
, incluida la opciónsetAllCaps
, la alineación del título, mejoras de aspecto, restricciones de ancho mínimo y problemas de navegación táctil. - Se agregó compatibilidad con los medianiles de las páginas
ViewPager
, que ayuda a la claseViewPager
a proporcionar compatibilidad de paginación para el contenido con un intervalo de desplazamiento horizontal amplio, como un mapa. - Se corrigieron varios errores de
ViewPager
, incluido el tamaño. y cambios en el conjunto de datos, el posicionamiento de la página, la interacción del usuario, el seguimiento de desplazamiento y el teclado problemas de navegación. - Se corrigieron muchos errores de
Fragment
, incluidos los errores manejo deonActivityResult()
cuando el fragmento de destino ya no existe, despachar eventos de selección a fragmentos invisibles, Comportamiento deFragmentTransaction.replace()
y se agregó un mejor manejo del estado para los fragmentos que se quitan de la vista. - Se agregó compatibilidad con el método
postOnAnimation()
enViewCompat
. - Se actualizó
NavUtils
para usar Android 4.1 (nivel de API 16) Función de navegación hacia arriba (cuando esté disponible)
- Se agregó compatibilidad con
- Accesibilidad
- Se actualizaron las clases de compatibilidad de accesibilidad, incluida
AccessibilityNodeInfoCompat
, para un seguimiento de las correcciones realizadas en Android. 4.1 (nivel de API 16) - Se agregó compatibilidad para acciones de desplazamiento de accesibilidad en
ViewPager
.
- Se actualizaron las clases de compatibilidad de accesibilidad, incluida
- Mejoras generales
- Se actualizó
TaskStackBuilder
para reflejar los cambios en la API en Android 4.1 (nivel de API 16) - Se mejoró
TaskStackBuilder
para permitir su uso. de un servicio. - Se agregó compatibilidad con
EXTRA_HTML_TEXT
aShareCompat
. - Se actualizó
NotificationCompat.Builder
para admitir elsetNumber()
. - Se agregó compatibilidad en
ConnectivityManagerCompat
para elisActiveNetworkMetered()
.
- Se actualizó
- Compatibilidad con interfaz de usuario
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se corrigieron las marcas de intent para los objetos
PendingIntent
generados. porTaskStackBuilder
. - Se quitaron los atributos sin usar de los proyectos de la biblioteca de gridlayout para garantizar. la biblioteca se puede compilar con el nivel de API 7 y versiones posteriores.
- Se agregaron los archivos
.classpath
y.project
para gridlayout. proyecto de biblioteca.
- Se corrigieron las marcas de intent para los objetos
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó
ShareCompat
, que proporciona clases auxiliares. para enviar y recibir contenido para aplicaciones de uso compartido en redes sociales, incluidos nuevos metadatos para atribuir datos compartidos a la app de origen. Esta clase también proporciona integración compatible con el NuevoShareActionProvider
en Android 4.0. - Se agregaron
NavUtils
yTaskStackBuilder
para brindar compatibilidad con la implementación de la Lineamientos de diseño de Android para la navegación Estos Las adiciones incluyen una forma de implementar el botón Arriba de la barra de acciones en todas las versiones. Para ver una implementación de ejemplo de este patrón, consulta el ejemplo de AppNavigation en (<em><sdk></em>/samples/<em><platform></em>/AppNavigation
). - Se agregó
NotificationCompat.Builder
para proporcionar un implementación de compatibilidad de la clase auxiliarNotification.Builder
de Android 3.0 para crear notificaciones de sistema estandarizadas.
- Se agregó
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Cambios en ViewPager:
- Se agregó compatibilidad adicional con vistas decorativas para
ViewPager
. Las vistas decorativas se pueden proporcionar como vistas secundarias de una página en un diseño XML. - Se agregó
PagerAdapter.getPageTitle()
para proporcionar cadenas de título para páginas, lo que se establece en "no" de forma predeterminada. título de cada página. - Se agregó
PagerTitleStrip
, un título no interactivo que se puede agregar como elemento secundario de ViewPager. Los desarrolladores pueden proporcionar texto la apariencia y el color, así como el tamaño del diseño y la información de gravedad. - Se actualizaron los métodos
PagerAdapter
para tomar ViewGroup. objetos, en lugar de View, para evitar la transmisión de clases en las implementaciones del adaptador. - Se actualizó
ViewPager
para usar el estilo de Selector. de lanzamiento. - Se corrigieron errores para la interacción con la interfaz de usuario y la automatización de pruebas.
- Se agregó compatibilidad adicional con vistas decorativas para
- Compatibilidad con fragmentos:
- Se cambió el método
setStartDeferred()
asetUserVisibleHint(boolean)
. - Se agregó el inicio diferido de las páginas fuera de la pantalla para mejorar el rendimiento.
- Se cambió el método
- Compatibilidad con las APIs de accesibilidad:
- Se actualizaron los métodos
AccessibilityDelegateCompat
para mostrar listas vacías en lugar de nulas. - Se agregaron las nuevas API que necesitan las muestras de la versión 4.
- Se actualizaron los métodos
- Cambios en ViewPager:
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Compatibilidad con las APIs de accesibilidad:
- Se agregó el
AccessibilityDelegateCompat
para admitirView.AccessibilityDelegate
. - Se agregó el
AccessibilityEventCompat
para admitirAccessibilityEvent
. - Se agregó el
AccessibilityManagerCompat
para admitirAccessibilityManager
. - Se agregó el
AccessibilityNodeInfoCompat
para admitirAccessibilityNodeInfo
. - Se agregó el
AccessibilityRecordCompat
para admitirAccessibilityRecord
. - Se agregó el
AccessibilityServiceInfoCompat
para admitirAccessibilityServiceInfo
. - Se agregó el
ViewGroupCompat
para admitir funciones de accesibilidad enViewGroup
. - Se modificó el
ViewCompat
para admitir funciones de accesibilidad enView
.
- Se agregó el
- Cambios en ViewPager:
- Se agregó compatibilidad con los márgenes entre páginas.
Se puede proporcionar un
Drawable
opcional. para rellenar los márgenes. - Se agregó compatibilidad para
EdgeEffect
. - Se agregó compatibilidad para la navegación del teclado.
- Se agregó compatibilidad para controlar cuántas páginas se mantienen a ambos lados. de la página actual.
- Se mejoró la física táctil.
- Se corrigieron errores relacionados con el comportamiento de la interfaz de usuario.
- Se agregó compatibilidad con los márgenes entre páginas.
Se puede proporcionar un
- Compatibilidad con las APIs de accesibilidad:
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Se agregó
EdgeEffectCompat
a admiteEdgeEffect
. - Se agregó
LocalBroadcastManager
para permitir que las aplicaciones puedan registrarse y recibir intents dentro de una única aplicación sin y los transmitimos en todo el mundo. - Se agregó compatibilidad en
ViewCompat
para buscar y configurar el sobredesplazamiento. modos paraView
en Android 2.3 y versiones posteriores. - Cambios en las APIs de Fragment:
- Se agregaron API nuevas para controlar la visibilidad de los nuevos menús.
- Se agregaron API de animación personalizadas.
- Se agregaron APIs en
FragmentActivity
para retener APIs personalizadas, datos de instancia sin configuración. - Se corrigieron varios errores.
- Se corrigió un error
Loader
que causaba problemas en Cancelación de elementosAsyncTask
cuando se ejecuta en Froyo y versiones anteriores más recientes de la plataforma. La asistencia código ahora usa su propia versión deAsyncTask
para mantener la misma en todas las versiones de la plataforma.
- Se agregó
- Cambios en la biblioteca de compatibilidad de la versión 4:
-
- Agrega compatibilidad para
Fragment.SavedState
- Agrega
MotionEventCompat
para admitir APIMotionEvent
más nuevas - Agrega
VelocityTrackerCompat
para admitir APIVelocityTracker
más nuevas - Agrega
ViewConfigurationCompat
para admitir APIViewConfiguration
más nuevas - Todas las APIs nuevas (disponibles solo en la biblioteca de compatibilidad) que te permiten crear IU
con paginación horizontal, que permite a los usuarios deslizar el dedo hacia la izquierda y la derecha entre las vistas de contenido. Clases para
para admitir esto incluyen:
ViewPager
: Es unViewGroup
que administra la para las vistas secundarias, entre las que el usuario puede deslizar el dedo.PagerAdapter
: Un adaptador que propaga elViewPager
con el vistas que representan cada página.FragmentPagerAdapter
: Es una extensión dePagerAdapter
para girar. entre fragmentos.FragmentStatePagerAdapter
: Es una extensión dePagerAdapter
para Cambiar entre fragmentos que usa la compatibilidad de la biblioteca paraFragment.SavedState
- Agrega compatibilidad para
- Nueva biblioteca de compatibilidad de la versión 13:
-
- Incluye
FragmentPagerAdapter
yFragmentStatePagerAdapter
para admitir la paginación horizontal.Estas son exactamente las mismas que las APIs agregadas a la biblioteca de compatibilidad v4, pero dependen de otros componentes de la plataforma en Android 3.2. Usa esta biblioteca en lugar de la versión 4 si estás desarrollando para Android 3.2 y versiones posteriores (todas las demás APIs de la biblioteca v4 ya están disponibles con nivel de API 13).
- Incluye
- Cambios para la biblioteca de la versión 4:
-
- Compatibilidad para fragmentos de animaciones.
- Corregir
Fragment.onActivityResult()
error
Revisión 22
marzo de 2015
Revisión 21.0.3
diciembre de 2014
Revisión 21.0.2
noviembre de 2014
Revisión 21.0.1
noviembre de 2014
Revisión 21
octubre de 2014
Revisión 20
julio de 2014
Revisión 19.1.0
marzo de 2014
Revisión 19.0.1
diciembre de 2013
Revisión 19
octubre de 2013
Revisión 18
julio de 2013
Revisión 13
mayo de 2013
Revisión 12
febrero de 2013
Revisión 11
noviembre de 2012
Revisión 10
agosto de 2012
Revisión 9
junio de 2012
Revisión 8
abril de 2012
Revisión 7
marzo de 2012
Revisión 6
diciembre de 2011
Nota: La referencia para las APIs de la biblioteca de compatibilidad ahora está disponible con
las referencias del framework, por ejemplo: android.support.v4.app
.
Revisión 5
diciembre de 2011
Revisión 4
octubre de 2011
Revisión 3
julio de 2011
Revisión 2
mayo de 2011
Revisión 1
marzo de 2011
Versión inicial con la biblioteca de la versión 4.