Android Jetpack
Cómo desarrollar IU con Compose
Aprende a usar Jetpack
Capacitación sobre aspectos básicos
Instructivo práctico
Ahora en la app de ejemplo de Android
Bibliotecas de Jetpack Explorar todas las bibliotecas
* Las bibliotecas populares y de uso frecuente aparecen primero.
activity* | Accede a las APIs componibles compiladas sobre Activity. |
appcompat* | Permite el acceso a nuevas APIs en versiones de APIs anteriores de la plataforma (muchas con Material Design). |
appsearch * | Ofrece a los usuarios búsquedas personalizadas en la app. |
camera* | Compila apps para cámaras móviles. |
compose * | Define tu IU de manera programática con funciones de componibilidad y que describan su forma y sus dependencias de datos. |
databinding* | Usa un formato declarativo para vincular los componentes de la IU en tus diseños con las fuentes de datos de tu app. |
fragment* | Segmenta tu app en varias pantallas independientes alojadas en un objeto Activity. |
hilt * | Extiende la funcionalidad de Dagger Hilt para habilitar la inserción de dependencias de ciertas clases de las bibliotecas de AndroidX. |
lifecycle* | Compila componentes optimizados para ciclos de vida que puedan ajustar el comportamiento según el estado actual del ciclo de vida de una actividad o un fragmento. |
Componentes de Material Design* | Son componentes de IU de Material Design modulares y personalizables para Android. |
navigation* | Compila y estructura la IU integrada en la app, controla los vínculos directos y navega entre pantallas. |
paging* | Carga datos en páginas y preséntalos en una RecyclerView. |
room* | Crea, almacena y administra datos persistentes con copia de seguridad en una base de datos SQLite. |
test* | Pruebas en Android |
work* | Programa y ejecuta tareas en segundo plano diferibles y basadas en restricciones. |
ads | Obtén un ID de publicidad con o sin los Servicios de Play. |
annotation | Expón los metadatos que ayudan a las herramientas y a otros desarrolladores a comprender el código de tu app. |
arch.core | Asistente para otras dependencias de arquitectura, incluidas las reglas de prueba JUnit que se pueden usar con LiveData. |
asynclayoutinflater | Aumenta los diseños de forma asíncrona para evitar bloqueos en la IU. |
autofill | Mejora la precisión de la función Autocompletar con sugerencias de extensiones. |
benchmark | Mide con precisión el rendimiento de tu código dentro de Android Studio. |
biometric | Autentica con credenciales biométricas o del dispositivo, y realiza operaciones criptográficas. |
bluetooth | Usa las funciones de Bluetooth de la plataforma de Android con APIs retrocompatibles. |
browser | Muestra páginas web en el navegador predeterminado del usuario. |
camera.media3 | PENDIENTE |
camera.viewfinder | "Visor independiente componible y basado en vistas para la cámara" |
car-app | Compila apps basadas en plantillas para Android Auto y el SO Android Automotive. |
cardview | Implementa el patrón de tarjeta de Material Design con esquinas redondeadas y sombras paralelas. |
collection | Reduce el impacto de la memoria de las colecciones existentes y nuevas que sean pequeñas. |
compose.animation | Compila animaciones en las aplicaciones de Jetpack Compose para enriquecer la experiencia del usuario. |
compose.compiler | Transforma las funciones que admite @Composable y habilita las optimizaciones con un complemento de compilador de Kotlin. |
compose.foundation | Escribe aplicaciones de Jetpack Compose con componentes fundamentales listos para usar y extiende la base para compilar tus propias piezas de sistema de diseño. |
compose.material | Compila las IUs de Jetpack Compose con componentes de Material Design listos para usar. Este es el punto de entrada de nivel superior de Compose, diseñado para proporcionar componentes que coincidan con los descritos en www.material.io. |
compose.material3 | Compila las IUs de Jetpack Compose con componentes de Material Design 3, la siguiente evolución de Material Design. Material 3 incluye temas y componentes actualizados, y funciones de personalización de Material You, como el color dinámico. Además, se diseñó para ser coherente con el nuevo estilo visual y la IU del sistema de Android 12. |
compose.material3.adaptive | Usa la biblioteca adaptable de Material 3 para crear IU adaptables que se adapten automáticamente según la configuración actual de la ventana, como las clases de tamaño de ventana o las posiciones del dispositivo. La biblioteca proporciona implementaciones predeterminadas de andamios y elementos componibles de los componentes básicos necesarios para crear tus propias experiencias personalizadas. |
compose.runtime | Se trata de los componentes fundamentales del modelo de programación de Compose y de su administración de estados, así como del entorno de ejecución principal al cual se orienta el complemento de compilación de Compose. |
compose.ui | Se trata de los componentes fundamentales de la IU de Compose necesarios para interactuar con el dispositivo, incluidos el diseño, el dibujo y la entrada. |
concurrent | Quita las tareas del subproceso principal con corrutinas y aprovecha ListenableFuture. |
constraintlayout | Posiciona y ajusta el tamaño de los widgets de un modo flexible con posicionamiento relativo. |
contentpager | Carga y numera los datos del objeto ContentProvider en un subproceso en segundo plano. |
coordinatorlayout | Posiciona los widgets de la aplicación de nivel superior, como AppBarLayout y FloatingActionButton. |
core | Orienta tu contenido a las APIs y funciones más recientes de la plataforma y, a la vez, admite dispositivos anteriores. |
core.uwb | Implementa UWB (banda ultraancha) en dispositivos compatibles. |
credentials | Esta biblioteca proporciona acceso unificado a las credenciales de un usuario. Esto puede incluir contraseñas, llaves de acceso y credenciales federadas. Esta biblioteca debe usarse para proporcionar experiencias de acceso seguras y sin interrupciones. |
credentials.registry | Para resolver estos problemas, agregamos un nuevo mecanismo de registro que permite que una app proporcione credenciales digitales de una manera que preserva la privacidad. En un nivel superior, la app del proveedor registrará previamente todas sus credenciales digitales candidatas con el Administrador de credenciales. Cuando el Administrador de credenciales reciba una solicitud de app para una credencial digital específica, ejecutará la IU de coincidencia de credenciales y selector de usuarios en una zona de pruebas. |
cursoradapter | Expón los datos de Cursor a un widget de ListView. |
customview | Implementa vistas personalizadas. |
datastore | Almacena los datos de forma asíncrona, coherente y transaccional, y, por ende, resuelve algunos de los inconvenientes de SharedPreferences. |
documentfile | Consulta un documento de archivo. |
draganddrop | Acepta datos de la función de arrastrar y soltar dentro de una app o desde otra y muestra una opción coherente de destino para soltar. |
drawerlayout | Implementa un widget de panel lateral de Material Design. |
dynamicanimation | Crea animaciones fluidas con una API de animación basada en la física. |
emoji | Muestra emojis en dispositivos modernos y antiguos. |
emoji2 | Muestra emojis en dispositivos modernos y antiguos. |
enterprise | Crea aplicaciones listas para su uso en empresas. |
exifinterface | Lee y escribe etiquetas EXIF de archivos de imagen. |
games | Usa el SDK de juegos de Android de forma nativa en tu app para realizar tareas complejas de videojuegos, como definir ritmo de fotogramas. |
glance | Compila diseños para superficies remotas con una API del estilo de Jetpack Compose. |
graphics | Aprovecha las instalaciones de gráficos en diferentes versiones de la plataforma de Android. |
gridlayout | Implementa un diseño de cuadrícula. |
health | Crea aplicaciones de salud eficaces en de manera independiente de plataformas. |
health.connect | Permite que los desarrolladores lean o escriban los registros de salud y fitness de los usuarios. |
heifwriter | Codifica una imagen o una colección de imágenes en formato HEIF con los códecs disponibles en el dispositivo Android. |
ink | Inspira las mejores apps de plumas. Bajar la barrera de entrada para los desarrolladores y ofrecer experiencias de escritura fluidas y de alto rendimiento |
input | Reduce la latencia de las interacciones de entrada mediante la predicción de MotionEvents futuros. |
interpolator | Usa interpolación de animación en plataformas anteriores. |
javascriptengine | Habilita tu app de Android para evaluar JavaScript. |
jetifier | Una herramienta independiente que migra las dependencias en una biblioteca de compatibilidad obsoleta a dependencias de AndroidX equivalentes. |
leanback | Usa Compose para TV en lugar de este artefacto. |
legacy | Este artefacto y sus clases dejaron de estar disponibles. A partir de Android 8, las restricciones de verificación de antecedentes hacen que esta clase ya no sea útil. |
lint | Lint realiza verificaciones para verificar el uso de las APIs de Gradle. |
loader | Carga datos para tu IU que se conserven después de los cambios de configuración. |
localbroadcastmanager | Este artefacto y sus clases dejaron de estar disponibles. En su lugar, debes usar LiveData o transmisiones reactivas. |
media | Comparte contenido y controles multimedia con otras apps. Sustituida por media3. |
media2 | Comparte contenido y controles multimedia con otras apps. |
media3 * | Admite bibliotecas para casos de uso de contenido multimedia. |
mediarouter | Habilita la reproducción y la visualización de contenido multimedia en dispositivos receptores remotos mediante una interfaz de usuario común. |
multidex | Implementa aplicaciones con varios archivos dex en dispositivos anteriores a Android 5. |
metrics | Realiza un seguimiento y genera informes de varias métricas del tiempo de ejecución de tu aplicación. |
palette | Extrae paletas de colores representativas de imágenes. |
Es una biblioteca para agregar capacidades de visualización de PDF en las apps. | |
percentlayout | Este artefacto y sus clases dejaron de estar disponibles. En su lugar, usa ConstraintLayout y los diseños asociados. |
más rápido | Proporciona anotaciones de origen para las optimizaciones de rendimiento. |
preference | Crea pantallas de configuración interactivas sin necesidad de interactuar con el almacenamiento del dispositivo ni de administrar la IU. |
Imprime fotos, documentos y otros gráficos o imágenes desde tu app. | |
privacysandbox.activity | PENDIENTE |
privacysandbox.ads | Esta biblioteca permite la integración con las APIs de preservación de la privacidad, que forman parte de Privacy Sandbox en Android. |
privacysandbox.plugins | Complemento de Gradle de la biblioteca del SDK de Privacy Sandbox de Android |
privacysandbox.sdkruntime | Esta biblioteca proporciona componentes para los consumidores que conocen el SdkRuntime. |
privacysandbox.tools | Una biblioteca para usar la funcionalidad de Privacy Sandbox en Android |
privacysandbox.ui | PENDIENTE |
profileinstaller | Permite que las bibliotecas prepropaguen los registros de compilación de manera anticipada para que ART los lea. |
recommendation | Promociona contenido en la pantalla principal del Launcher de Android TV. |
recyclerview | Muestra grandes conjuntos de datos en tu IU y, a la vez, minimiza el uso de memoria. |
remotecallback | Crea un wrapper para que los desarrolladores puedan proporcionar un elemento PendingIntent con mayor facilidad. |
resourceinspection | Muestra los atributos de las vistas personalizadas en el Inspector de diseño en vivo de Android Studio. |
savedstate | Escribe componentes que se puedan conectar y que guarden el estado de la IU cuando se cierre un proceso y lo restablezcan cuando se reinicie. |
security | Administra claves y encripta archivos y preferencias compartidas de forma segura. |
sharetarget | Proporciona retrocompatibilidad para usar accesos directos como objetivos de uso compartido directo. |
slice | Muestra elementos de la IU con plantillas fuera de la app. |
slidingpanelayout | Implementa un patrón de IU de panel deslizante. |
startup | Implementa una forma sencilla y eficaz de inicializar componentes cuando se abre una app. |
sqlite | Trabaja con bases de datos locales de SQLite. Si es posible, usa Room. |
swiperefreshlayout | Implementa el patrón de UI de deslizar para actualizar. |
test.uiautomator | Framework para pruebas de IU funcionales entre apps |
textclassifier | Identifica conversaciones, vínculos, selecciones y otras construcciones similares en textos. |
tracing | Escribe eventos de seguimiento en el búfer de registro del sistema. |
transition | Anima el movimiento en la IU con diseños iniciales y finales. |
tv | Les proporciona a los desarrolladores funciones de Compose y Material Design para escribir aplicaciones para TV |
tvprovider | Proporciona canales de Android TV. |
xr.arcore | Lleva el contenido digital al mundo real con capacidades de percepción. |
xr.compose | Compila de forma declarativa diseños de IU espaciales que aprovechen las capacidades espaciales de Android XR. |
xr.compose.material3 | Compila con componentes y diseños de Material que se adapten a XR |
xr.runtime | Inicia tu sesión de RA o 3D personalizada con nuestro entorno de ejecución nativo. |
xr.scenecore | Compila y manipula el gráfico de escenas de Android XR con contenido 3D. |
vectordrawable | Renderiza gráficos vectoriales. |
versionedparcelable | Proporciona un formato de serialización binario estable y compacto que se puede pasar de un proceso a otro o conservar de forma segura. |
viewpager | Muestra objetos de Views o Fragments en formato deslizable. Si es posible, usa el objeto viewpager2 en su lugar. |
viewpager2 | Muestra objetos de Views o Fragments en formato deslizable. |
wear | Crea aplicaciones para relojes inteligentes de Wear OS by Google. |
wear.compose | Proporciona funcionalidades que admiten dispositivos, tamaños, formas y gestos de navegación específicos para wearables para escribir aplicaciones de Jetpack Compose para wearables. |
wear.protolayout | Esta biblioteca permite definir un conjunto de diseños de la IU y expresiones ajenas a ella para que se rendericen o evalúen en plataformas remotas. |
wear.tiles | Crea aplicaciones para relojes inteligentes de Wear OS by Google. |
wear.watchface | Crea aplicaciones para relojes inteligentes de Wear OS by Google. |
webkit | Trabaja con las APIs modernas de WebView en Android 5 y versiones posteriores. |
window | Ayuda a admitir diferentes factores de forma de dispositivos, como dispositivos plegables. |
window.extensions.core | Las APIs de Core para las extensiones de biblioteca de Window Manager |
¿Por qué deberías usar Android Jetpack?
Cumpla con las prácticas recomendadas
Elimina el código estándar
Reduce la fragmentación
Noticias y videos
Compatibilidad con varios vínculos en una sola cadena de texto
Updated 22 de febrero de 2025
Puedes admitir varios vínculos en una sola cadena de texto para darles a los usuarios opciones de destino y aumentar la participación.
Valida la entrada a medida que el usuario escribe
Updated 22 de febrero de 2025
Puedes validar la entrada a medida que el usuario escribe en un campo de texto, como cuando ingresa un nombre, un correo electrónico, una dirección o cualquier otra información de contacto. Esta validación reduce los errores y ahorra tiempo a los usuarios.
Cómo cargar y mostrar imágenes
Updated 22 de febrero de 2025
Para mostrar imágenes en tu app para el contenido y las respuestas a las acciones del usuario, carga las imágenes desde el disco o desde una fuente externa en Internet.
Aplica diseño a partes del texto
Updated 22 de febrero de 2025
Puedes aplicar diseño a partes del texto para mejorar la legibilidad, aumentar la experiencia del usuario positiva y fomentar una mayor creatividad mediante el uso de colores y fuentes.
Crea una tarjeta como contenedor
Updated 6 de febrero de 2025
Una tarjeta proporciona un contenedor de Material Design para tu IU.
Animación en Compose
Updated 6 de febrero de 2025
Descubre cómo animar valores de estado, usar transiciones, animar cambios de visibilidad o tamaño, y hacer transiciones con las APIs de animación de Compose.
Cómo mostrar una barra superior de la app
Updated 6 de febrero de 2025
Crea una barra superior de la app para ayudar a los usuarios a navegar y acceder a las funciones de tu app con el elemento componible TopAppBar.
Cómo mostrar una barra de la aplicación
Updated 6 de febrero de 2025
Una barra de la app es un contenedor en la parte superior o inferior de la pantalla que contiene funciones clave y elementos de navegación.
Oculta o muestra la contraseña según un botón de activación del usuario
Updated 6 de febrero de 2025
Puedes crear un ícono para ocultar o mostrar una contraseña según un botón de activación del usuario para mejorar la seguridad y la experiencia del usuario.
Cómo administrar los cambios de configuración del teclado desmontable
Updated 6 de febrero de 2025
Obtén más información para administrar los cambios de configuración del teclado desmontable.
Crea un indicador de progreso
Updated 6 de febrero de 2025
Un indicador de progreso muestra el estado de una operación.
Cómo mostrar una imagen animada
Updated 6 de febrero de 2025
Puedes crear una experiencia del usuario más interactiva y atractiva en tu app cargando un archivo de elementos de diseño para mostrar imágenes animadas. Las imágenes animadas son útiles para crear indicadores de carga, indicadores de éxito o error, facilitar el desarrollo de juegos y otras funciones de la IU.
Cómo restringir la orientación de las apps en teléfonos, pero no en dispositivos con pantalla grande
Updated 6 de febrero de 2025
Restringe la orientación de la app en pantallas pequeñas, pero no en pantallas grandes.
Cómo mostrar una lista de paginación
Updated 6 de febrero de 2025
Crea una lista de paginación para que los usuarios puedan desplazarse y acceder a contenido demasiado grande para caber en una sola pantalla. Las listas de paginación horizontal pueden ayudar a los usuarios a navegar por contenido como imágenes, presentaciones de diapositivas o carruseles de productos. Las listas de paginación vertical son útiles para las apps con mucho contenido en las que los usuarios pueden tener que desplazarse por una gran cantidad de elementos, como artículos.
Cómo mostrar una imagen recortada en una forma
Updated 6 de febrero de 2025
Puedes dibujar sombras alrededor del área recortada de la imagen para mostrar una imagen en forma de clip.
Aspectos básicos de Compose
Updated 6 de febrero de 2025
En esta serie de videos, se presentan varias APIs de Compose y se muestra rápidamente qué está disponible y cómo usarlas.
Agrega un interruptor que los usuarios puedan activar o desactivar
Updated 6 de febrero de 2025
Puedes usar un interruptor de activación para permitir que los usuarios elijan uno de dos estados.
Crea un chip para representar entidades complejas
Updated 6 de febrero de 2025
Un componente de chip representa visualmente entidades complejas, a menudo con un ícono y una etiqueta.
Pruebas en Compose
Updated 6 de febrero de 2025
Compila tus primeras pruebas de Jetpack Compose. Aprende a usar los artefactos de prueba de Compose para escribir pruebas de IU, usar reglas de prueba, buscadores y aserciones.
Cómo mostrar componentes interactivos
Updated 6 de febrero de 2025
Elige el componente adecuado para tu IU y descubre cómo implementarlo en tu app.
Cómo administrar el estado de WebView
Updated 6 de febrero de 2025
Administra el estado de un WebView en todos los cambios de configuración.
Rechaza los toques de la palma con la pluma stylus
Updated 6 de febrero de 2025
Rechaza los toques accidentales de la palma con la pluma stylus.
Crea un componente de andamiaje para mantener unida la IU
Updated 6 de febrero de 2025
Un andamiaje mantiene unidas diferentes partes de la IU, como las barras de la app y los botones de acción flotantes, lo que les da a las apps un aspecto y estilo coherentes.
Mostrar mensajes emergentes o solicitudes de entrada del usuario
Updated 6 de febrero de 2025
Los diálogos muestran mensajes emergentes o solicitan entradas del usuario en una capa sobre el contenido principal de la app.
Crea una cuadrícula desplazable
Updated 6 de febrero de 2025
Puedes administrar conjuntos de datos grandes y contenido dinámico con cuadrículas diferidas, lo que mejora el rendimiento de la app. Con los elementos componibles de cuadrícula diferida, puedes mostrar elementos en un contenedor desplazable, que abarca varias columnas o filas.
Crea un botón de acción flotante (BAF)
Updated 6 de febrero de 2025
Un botón de acción flotante le permite al usuario realizar una acción principal en la app.
Diseños avanzados en Compose
Updated 6 de febrero de 2025
Descubre cómo compilar diseños complejos para tus diseños de Compose, enfocándote en la fase y las restricciones de diseño, los diseños de subcomposición y las mediciones intrínsecas.
Optimiza tu contenido para pantallas grandes
Updated 6 de febrero de 2025
Habilita tu app para que admita una experiencia del usuario optimizada en tablets, dispositivos plegables y ChromeOS.
Crea un menú deslizable con el componente de panel lateral de navegación
Updated 6 de febrero de 2025
Un panel lateral de navegación es un menú de navegación deslizante.