0Pricing
Jetpack Compose Academy · Leçon

LaunchedEffect pour les coroutines

Lancez un travail suspendu lié à la composition.

LaunchedEffect pour les coroutines est une leçon Jetpack Compose Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Jetpack Compose Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Jetpack Compose Academy comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

Effects Live Outside Composition

Composables should be pure and run many times. When you need to do real work like a network call, you reach for a side effect handler instead.

Meet LaunchedEffect

A LaunchedEffect runs suspend code in a coroutine that is tied to where it sits in your composition. Perfect for one-shot startup work. 🚀

It Starts When It Enters

When a LaunchedEffect first enters the composition, it launches its block. When it leaves the composition, the coroutine is cancelled for you.

LaunchedEffect(Unit) {
    loadProfile()
}

The Key Controls Restarts

The first argument is a key. If the key changes between recompositions, the old coroutine is cancelled and a fresh one starts.

LaunchedEffect(userId) {
    user = fetchUser(userId)
}

Use Unit to Run Once

Passing Unit (or true) as the key means the effect never restarts. It runs a single time when the Composable appears.

LaunchedEffect(Unit) {
    analytics.logScreenView()
}

Suspend Calls Are Welcome

Inside the block you can freely call suspend functions like delay or a Retrofit request. The coroutine scope is provided for you.

LaunchedEffect(Unit) {
    delay(2000)
    showSplash = false
}

Never Launch in the Body

Calling a coroutine directly in the Composable body is a bug. The body re-runs on every recomposition, so you would fire the work again and again.

Cancellation Is Automatic

When the user navigates away and the Composable leaves the screen, Compose cancels the coroutine. No manual cleanup, no leaks.

Pair It with State

Effects usually write their result into state so the UI redraws. Store the loaded data, and recomposition shows it.

var data by remember { mutableStateOf<List<Item>>(emptyList()) }
LaunchedEffect(Unit) { data = repo.load() }

Multiple Keys for Combined Triggers

You can pass several keys. The effect restarts whenever any of them changes, which is handy for re-fetching on filter changes.

LaunchedEffect(query, sort) {
    results = search(query, sort)
}

A Typical Loading Pattern

Together it reads like a recipe: set loading true, await the result, then store it. Compose handles the lifecycle around your coroutine.

LaunchedEffect(id) {
    loading = true
    item = repo.get(id)
    loading = false
}

Quick Check

Think about how restarts are controlled.

Recap: LaunchedEffect

Nice work! LaunchedEffect runs suspend code tied to composition, restarts when its key changes, and cancels itself automatically when the Composable leaves. 🎯

Questions Fréquemment Posées

La leçon « LaunchedEffect pour les coroutines » est-elle gratuite ?

Oui — le texte complet de « LaunchedEffect pour les coroutines » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Jetpack Compose Academy, passe à CoddyKit PRO. Le cours Jetpack Compose Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « LaunchedEffect pour les coroutines » ?

Lancez un travail suspendu lié à la composition. Tu pratiques Jetpack Compose Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Jetpack Compose Academy ?

Aucune expérience préalable n'est requise. Jetpack Compose Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « LaunchedEffect pour les coroutines » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Jetpack Compose Academy ?

Oui. Chaque leçon Jetpack Compose Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. LaunchedEffect pour les coroutines
  2. rememberCoroutineScope pour les événements
  3. DisposableEffect et nettoyage
  4. derivedStateOf et snapshotFlow
← Retour à Jetpack Compose Academy