---
title: "Suivre les vues d'écran de flow dans le SDK Android"
description: "Recevez un événement chaque fois qu'un utilisateur ouvre un écran de flow dans votre application Android, et transmettez-le à vos outils d'analytics produit."
---

> **AI agents**: to search Adapty docs faster and with fewer tokens, install the Adapty skill. Claude Code (self-updating via plugin): `claude plugin marketplace add adaptyteam/adapty-skills && claude plugin install adapty-skills@adapty` — other tools: `npx skills add adaptyteam/adapty-skills --all`

Chaque fois qu'un utilisateur ouvre un écran dans un [flow](adapty-flow-builder), le SDK envoie un événement `flow_screen_showed` à votre application. Transmettez-le à Amplitude, Mixpanel, ou tout autre outil d'analytics produit que vous utilisez, afin d'analyser les écrans de flow avec le reste des événements de votre application.

:::tip
Pour voir jusqu'où les utilisateurs progressent dans un flow, aucun code n'est nécessaire — les [métriques de flow](flow-metrics) affichent déjà les vues, les complétions et les abandons par écran dans l'Adapty Dashboard. Utilisez ce guide quand vous avez besoin de ces mêmes données dans vos propres outils d'analyse, combinées avec des événements qu'Adapty ne connaît pas.
:::

## Avant de commencer \{#before-you-start\}

Vous avez besoin de :

- **Adapty Android SDK v4 ou version ultérieure** : le callback d'analyse de flow n'existe pas dans les versions antérieures.
- **Une version de flow publiée après la mise en production de cette fonctionnalité** : Adapty génère les événements d'écran lors de la publication d'un flow, donc un flow publié avant cette date ne rapporte rien. Si aucun événement ne parvient à votre application, publiez une nouvelle version du flow et réessayez.

## Ce que vous recevez \{#what-you-receive\}

Un flow envoie `flow_screen_showed` chaque fois qu'un utilisateur ouvre l'un de ses écrans. Adapty comptabilise ces événements dans ses propres analytics de flow et les transmet également à votre application, afin que vous puissiez reconstituer le même funnel dans vos propres analytics.

| Paramètre        | Description                                                                                                                  |
|:-----------------|:---------------------------------------------------------------------------------------------------------------------------------|
| `instanceId`     | L'ID de l'écran que l'utilisateur a ouvert.                                                                                  |
| `screen_order`   | La position de l'écran dans le flow.                                                                                         |
| `is_last_screen` | `true` quand l'écran n'a nulle part où aller ensuite. Un flow avec des embranchements peut se terminer sur plusieurs écrans différents, et chacun d'eux renvoie `true`. |

`isBackendEvent` et `isCustomerEvent` sont tous les deux `true` pour cet événement : Adapty continue de le comptabiliser, et votre application le reçoit également.

Les affichages d'écran parviennent au même callback d'analyse que tous les autres événements de flow. Consultez [Gérer les événements de flow et de paywall](android-handling-events) pour savoir où l'enregistrer.

## Transmettre chaque affichage d'écran à vos outils d'analyse \{#forward-every-screen-view-to-your-analytics\}

Vérifiez d'abord le nom de l'événement, car un flow remonte d'autres événements via le même callback.

```kotlin showLineNumbers title="Kotlin"
override fun onAnalyticEvent(
    name: String,
    params: Map<String, Any?>,
    context: Context,
) {
    if (name != "flow_screen_showed") return

    val screenId = params["instanceId"]
    val screenOrder = params["screen_order"]

    // Send screenId and screenOrder to your analytics provider here.
}
```

## Exécuter du code quand un utilisateur atteint la fin \{#run-code-when-a-user-reaches-the-end\}

`is_last_screen` vaut `true` sur un écran que le flow ne peut pas dépasser. Utilisez-le pour déverrouiller du contenu, marquer l'onboarding comme terminé, ou envoyer votre propre événement de complétion, sans avoir à ajouter une action de bouton dans le builder.

```kotlin showLineNumbers title="Kotlin"
override fun onAnalyticEvent(
    name: String,
    params: Map<String, Any?>,
    context: Context,
) {
    if (name != "flow_screen_showed") return
    if (params["is_last_screen"] != true) return

    // The user reached the end of the flow.
}
```

Atteindre le dernier écran n'équivaut pas à fermer le flow. Un utilisateur peut voir l'écran final et fermer le flow sans agir, et un flow avec branches peut se terminer sur plusieurs écrans différents. Pour savoir que le flow lui-même a disparu, utilisez `onFlowClosed` à la place.