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
Compose runtime and performance - Android Developers Backstage
Updated 4 de marzo de 2025
In this episode, Tor and Romain chat with Leland and Chuck from the Compose team about performance -- recent optimizations, upcoming optimizations, and challenges. Listen to the podcast → https://goo.gle/3QKVy8k Catch videos on YouTube →
SoundCloud uses Jetpack Glance to build Liked Tracks widget in just 2 weeks
Updated 4 de marzo de 2025
To make it even easier for users to listen on Android, developers at SoundCloud — an artist-first music platform — turned to Jetpack Glance to create a Liked Tracks widget for their highly-rated app, which boasts 4.6 stars and over 100 million
Meet the Android Studio Team: A Conversation with Android Developer UX Manager, Dan Dole
Updated 27 de febrero de 2025
Welcome to "Meet the Android Studio Team"! In this blog series, we introduce you to the passionate people who create the Android development tools you use every day. Get to know the engineers, designers, product managers, and more who work hard to
Meet the Android Studio Team: A Conversation with Engineering Director, Tor Norbye
Updated 20 de febrero de 2025
Welcome to "Meet the Android Studio Team," our new ongoing blog series. Each week, we'll introduce you to the talented people behind Android Studio. Get to know the engineers, designers, product managers, and more who create the best possible
Compose for TV
Updated 19 de febrero de 2025
Compose for TV is the modern approach for building Android TV user interfaces. Compose for TV unlocks all the benefits of Android's Jetpack Compose for your TV apps, making building beautiful and functional UIs for your app much easier. Jetcaster
Meet the Android Studio Team: A Conversation with Staff Developer Programs Engineer, Trevor Johns
Updated 12 de febrero de 2025
Android Studio isn't just code and algorithms – it's built by real people with fascinating stories. Our "Meet the Android Studio Team" series gives you a glimpse into the lives and passions of the talented individuals who craft the tools you use
Meet the Android Studio Team: A Conversation with Director of Product Management, Jamal Eason
Updated 6 de febrero de 2025
Dive into the world of Android Studio and meet the masterminds behind your favorite development tools! In our recurring blog series, "Meet the Android Studio Team," we'll introduce you to the brilliant engineers, designers, product managers, and more
Testing
Updated 30 de enero de 2025
Keep your UI delightful by testing it! Previews allow quickly verifying components during development, which can be automated with the preview screenshot testing Gradle plugin to create visual regression tests. Behavior tests can use
Meet the Android Studio Team: A Conversation with Product Manager, Paris Hsu
Updated 30 de enero de 2025
Welcome to "Meet the Android Studio Team"; a short blog series where we pull back the curtain and introduce you to the passionate people who build your favorite Android development tools. Get to know the talented minds – engineers, designers, product
Apps adopt Transformer to support more reliable and performant media editing use cases
Updated 10 de enero de 2025
The Jetpack Media3 library enables Android apps to build high quality media apps. As part of the Media3 library, the Transformer module aims to provide easy to use, reliable, and performant APIs for transcoding and editing media. For example, apps
Clipping and masking
Updated 27 de noviembre de 2024
Clipping or masking parts of your content is a way to create delightful UI effects, and is a common need when working with custom UI components. Clipping is the process of removing parts of your content based on a set path or shape. Whereas masking
Graphics layers
Updated 15 de noviembre de 2024
In this episode, learn all about Graphics Layers in Compose and how you can use the APIs to composite graphics layers together to create interesting visual effects. This episode covers how to use BlendModes to blend between two layers, and how to set
AnchoredDraggable #shorts
Updated 7 de noviembre de 2024
In this episode, we cover Compose AnchoredDraggable - an interactive UI element that allows users to drag and swipe it, while maintaining an anchor to its original position. Learn more → https://goo.gle/compose-anchored-draggable Watch more Compose
AnchoredDraggable
Updated 30 de octubre de 2024
In this episode, we cover Compose AnchoredDraggable, which is a Jetpack Compose API that lets you build components that can be dragged between anchor points and settles an anchor point at the end of the gesture. AnchoredDraggable is often used to
CameraX update makes dual concurrent camera even easier
Updated 16 de octubre de 2024
CameraX, Android's Jetpack camera library, is getting an exciting update to its Dual Concurrent Camera feature, making it even easier to integrate this feature into your app. This feature allows you to stream from 2 different cameras at the same
Here's what happening in our latest Spotlight Week: Adaptive Android Apps
Updated 14 de octubre de 2024
With Android powering a diverse range of devices, users expect a seamless and optimized experience across their foldables, tablets, ChromeOS, and even cars. To meet these expectations, developers need to build their apps with multiple screen sizes
Introducing Ink API, a new Jetpack library for stylus apps
Updated 8 de octubre de 2024
With stylus input, Android apps on phones, foldables, tablets, and Chromebooks become even more powerful tools for productivity and creativity. While there's already a lot to think about when designing for large screens – see our full guidance and
Room renovations
Updated 24 de septiembre de 2024
In this video, Elif from the Android Toolkit & Jetpack Team will be talking about Room! This past year was a BIG one for Room, and we are excited to share all the renovations we completed as we entered the Kotlin Multiplatform world.
Flow layouts
Updated 11 de septiembre de 2024
FlowRow and FlowColumn are similar to Row and Column layouts, however the items will flow into the next row or column when there is no more space in the area. In this video, Flow layouts are covered along with how to use them and tricks for using
Navigation Compose meet Type Safety #shorts
Updated 10 de septiembre de 2024
In this video, Clara Fok introduces the new Type Safety feature for Navigation Compose. Watch more Android Conference Talks → https://goo.gle/ConferenceTalks #Featured #AndroidDev #JetpackCompose Speakers: Clara Fok Products Mentioned: Jetpack
Navigation Compose meet Type Safety
Updated 10 de septiembre de 2024
In this video, Clara Fok will talk about the new Type Safety feature for Navigation Compose and the new type-safe APIs. Chapters: 0:00 - Introduction 1:43 - Type Safety 4:28 - Building NavGraphs 5:27 - Navigate with arguments 6:32 - Retrieve
Jetpack Compose APIs for building adaptive layouts using Material guidance now stable
Updated 9 de septiembre de 2024
The 1.0 stable version of the Compose adaptive APIs with Material guidance is out, ready to be used in production. The library helps you build adaptive layouts that provide an optimized user experience on any window size. The team at SAP Mobile Start
SAP integrated NavigationSuiteScaffold in just 5 minutes to create adaptive navigation UI
Updated 9 de septiembre de 2024
SAP Mobile Start is an app that centralizes access to SAP's mobile business suite, a hub for users to keep track of their companies’ processes and data so they can efficiently manage their daily to-dos while on the move. Recently, SAP Mobile Start
Shaders
Updated 29 de agosto de 2024
In addition to Brushes, in Compose there is another delightful mechanism for painting your pixels and rendering graphics on screen, called Shaders. In this episode, we dive into the details of using shaders in Jetpack Compose, combined with render
Learn all about creating Shared elements in Jetpack Compose
Updated 23 de julio de 2024
🤔 Want to learn all about shared elements in Jetpack Compose? Take a look at our latest video on the topic - tap the link to find out more 🧞 Watch more Android Conference Talks → https://goo.gle/ConferenceTalks #Featured #AndroidDev #JetpackCompose
Advanced layout animations in Compose (Shared elements)
Updated 23 de julio de 2024
Compose is the recommended modern UI toolkit for Android that makes it easy to create beautiful and delightful user interfaces. A new powerful feature of Compose is the Lookahead layout system. Using this new layouting mechanism, we can create
Top 3 Updates with Compose across Form Factors at Google I/O '24
Updated 11 de junio de 2024
Google I/O 2024 was filled with lots of updates and announcements around helping you be more productive as a developer. Here are the top 3 announcements around Jetpack Compose and Form Factors from Google I/O 2024: The June 2024 release of Jetpack
A Developer’s Roadmap to Predictive Back (Views)
Updated 24 de mayo de 2024
Before you read on, this topic is scoped to Views. Predictive Back with Compose is easier to implement and not included in this blog post. To learn how to implement Compose with Predictive Back, see the Add predictive back animations codelab and the
Everything you need to know about Google TV and Android TV OS
Updated 15 de mayo de 2024
Over the past year, we’ve seen significant growth of Android TV OS, reaching 220 million monthly active devices with a 47% year-over-year increase. This incredible engagement would not be possible without our dedicated developer community. A massive
Google I/O 2024: What’s new in Android Development Tools
Updated 14 de mayo de 2024
At Google I/O 2024, we announced an exciting new set of features and tools aimed at making Android development faster and easier. We also shared updates to Android Studio that will help you leverage AI and make it easier for you to build high quality