0Pricing
Jetpack Compose Academy · Lección

Pila de navegación y deep links

Controle el historial y abra rutas desde URLs.

Pila de navegación y deep links es una lección gratuita de Jetpack Compose Academy en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Jetpack Compose Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Jetpack Compose Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

What the Back Stack Is

The back stack is the history of screens you have visited. Each navigate call pushes a new entry on top of it.

Going Back

Calling popBackStack() removes the top entry and shows the screen beneath. The system back gesture does the same thing automatically.

navController.popBackStack()

Pop Up To a Route

Use popUpTo while navigating to clear screens off the stack up to a target. It is perfect for returning to a known root.

navController.navigate("home") {
    popUpTo("home")
}

Avoid Duplicate Entries

Set launchSingleTop to true so tapping the same destination twice does not stack identical copies of it.

navController.navigate("home") {
    launchSingleTop = true
}

Clear After Login

After signing in, pop the login screen with inclusive = true so back never returns to it.

navController.navigate("home") {
    popUpTo("login") { inclusive = true }
}

Meet Deep Links

A deep link opens a specific screen directly from a URL or notification, skipping the normal step-by-step path through your app.

Declare a Deep Link

Attach a navDeepLink to a destination with a URI pattern. Compose matches incoming links against that pattern.

composable(
    "profile/{userId}",
    deepLinks = listOf(navDeepLink { uriPattern = "app://profile/{userId}" })
) { }

Deep Links Carry Arguments

Placeholders in a deep link URI fill your route arguments. Opening app://profile/42 lands on the profile screen with userId set to 42.

Register an Intent Filter

For links from outside the app, add a matching intent-filter in the manifest so Android routes the URL to your activity.

Deep Links Build the Stack

Navigation Compose can synthesize a back stack for a deep link, so pressing back walks up to a sensible parent instead of exiting.

Observe the Current Entry

Collect currentBackStackEntryAsState to react to where the user is, useful for highlighting a selected tab.

val entry by navController.currentBackStackEntryAsState()
val route = entry?.destination?.route

Quick Check

How do you stop back from returning to the login screen?

Recap

You now control history with popUpTo and launchSingleTop, and you can jump straight to a screen using deep links that even rebuild a sensible back stack. 🚀

Preguntas frecuentes

¿La lección «Pila de navegación y deep links» es gratis?

Sí — el texto completo de «Pila de navegación y deep links» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Jetpack Compose Academy, actualiza a CoddyKit PRO. El curso de Jetpack Compose Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Pila de navegación y deep links»?

Controle el historial y abra rutas desde URLs. Practicas Jetpack Compose Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Jetpack Compose Academy?

No se requiere experiencia previa. Jetpack Compose Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Pila de navegación y deep links»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Jetpack Compose Academy?

Sí. Cada lección de Jetpack Compose Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. NavController y NavHost
  2. Destinos y rutas Composable
  3. Pasar argumentos entre pantallas
  4. Pila de navegación y deep links
← Volver a Jetpack Compose Academy