Migrer vers Compose pour la télévision
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Pour passer du kit d'outils d'interface utilisateur Leanback à Compose pour Android TV, procédez comme suit:
Évaluez votre implémentation actuelle de Leanback en identifiant les composants que vous utilisez (y compris ceux fournis dans les fragments préfabriqués), en comprenant la structure de votre UI et la façon dont les données circulent dans votre application.
Migrer des écrans individuels de votre application TV vers Compose afin de pouvoir apprendre et vous adapter progressivement à Compose.
Bien que vous puissiez utiliser à la fois Leanback et Compose dans la même application pour permettre un processus de migration progressif, commencez par remplacer des fragments entiers à la fois dans le but de convertir votre application TV en une seule activité.
en faisant de belles économies. N'essayez pas de migrer tout d'un coup. Commencez par des composants plus petits, tels que les paramètres ou les écrans de compte, et passez progressivement à l'application.
Consultez la documentation et les exemples des ressources listées dans la section Ressources.
Exploitez les composants dédiés de Compose pour TV à l'aide des bibliothèques Jetpack. Consultez nos guides de conception pour découvrir comment personnaliser et étendre des composables prêts à l'emploi afin de créer de belles interfaces utilisateur pour la télévision.
Adaptez votre gestion des données et de l'état pour prendre en charge le paradigme de programmation déclarative de Compose. L'adaptation peut nécessiter de modifier la façon dont vous gérez les données et l'état dans votre application. Utilisez ViewModel
et les mécanismes de gestion de l'état interne de Jetpack Compose pour gérer les données et l'état dans votre application.
Testez et itérez lorsque vous migrez des parties plus complexes de votre application.
Contactez la communauté de développeurs Android active sur Stack Overflow pour signaler les bugs que vous rencontrez ou envoyez-les via notre outil public de suivi des bugs.
Ressources
Que vous soyez novice avec Compose ou que vous soyez déjà en train de migrer vers Compose, notre vaste collection de ressources est là pour vous aider à découvrir les bonnes pratiques pour créer des UI TV avec le kit d'outils de développement Android moderne, Jetpack Compose:
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/27 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/07/27 (UTC)."],[],[],null,["# Migrate to Compose for TV\n\nTo migrate from the Leanback UI toolkit to Compose for Android TV, follow these steps:\n\n- **Assess your current Leanback implementation** by identifying the components\n you're using (including those that are provided inside the prefabricated\n fragments) and understanding how your UI is structured and how data flows\n through your app.\n\n- **Migrate individual screens** of your TV app to Compose so you can learn and adapt to Compose\n gradually.\n\n - While you can use both Leanback and Compose within the same app to allow for\n a gradual migration process, begin by replacing entire fragments at a time\n with a goal of converting your TV application into a single activity.\n\n - Start small. Don't try to migrate everything at once. Begin with smaller\n components like settings or account screens and gradually work your way\n through the app.\n\n - Refer to documentation and examples in the resources listed in the\n [Resources](#resources) section.\n\n- **Leverage dedicated components** from Compose for TV by using [the Jetpack\n libraries](/jetpack/androidx/releases/tv). Consult our [design guides](/design/ui/tv/guides/components) to explore\n how you can customize and extend ready-to-use composables to build\n beautiful TV UIs.\n\n- **Adapt your data and state management** to support the Compose [declarative\n programming paradigm](/develop/ui/compose/mental-model#paradigm). Adaptation might require changes in how you manage\n data and state in your app. Use [`ViewModel`](/reference/kotlin/androidx/lifecycle/ViewModel)\n and Jetpack Compose internal state management mechanisms to manage data and\n state in your app.\n\n- **[Test](/develop/ui/compose/testing) and iterate** as you migrate more complex parts of your app.\n\nEngage with the active Android [developer community on Stack\nOverflow](https://stackoverflow.com/questions/tagged/android-jetpack-compose-tv) for any bugs you encounter, or submit the bugs through\nour [public bug tracker](/jetpack/androidx/releases/tv#feedback).\n\nResources\n---------\n\nWhether you're new to Compose or are in the process of migrating to Compose\nalready, our large collection of resources are here to help you learn best\npractices for building TV UIs with the modern Android development toolkit,\nJetpack Compose:\n\n- [Compose for TV integration guides](/training/tv/playback/compose)\n- [TV design guides](/design/ui/tv/guides/components)\n- [Introduction to Compose for TV](/codelabs/compose-for-tv-introduction) codelab\n- [Library release notes](/jetpack/androidx/releases/tv)\n- [JetStream](https://github.com/android/tv-samples/tree/main/JetStreamCompose) video streaming sample app\n- [JetCaster](https://github.com/android/compose-samples/tree/main/Jetcaster/tv-app) audio streaming sample app\n- [Component samples](https://cs.android.com/androidx/platform/frameworks/support/+/androidx-main:tv/samples/src/main/java/androidx/tv/samples/)"]]