Compose for TV — это современный подход к созданию пользовательских интерфейсов для Android TV. Compose for TV открывает все преимущества Android Jetpack Compose для ваших приложений на телевизоре, значительно упрощая создание красивых и функциональных пользовательских интерфейсов для ваших приложений.
К числу конкретных преимуществ использования Compose for TV относятся следующие:
- Гибкость : Compose можно использовать для создания любых типов пользовательского интерфейса, от простых макетов до сложных анимаций. Компоненты работают «из коробки», но также могут быть настроены и стилизованы в соответствии с потребностями вашего приложения.
- Упрощенная и ускоренная разработка : Compose совместим с существующим кодом и позволяет разработчикам более эффективно создавать приложения с меньшим количеством кода.
- Интуитивно понятный интерфейс : Compose использует декларативный синтаксис, позволяющий вносить изменения в пользовательский интерфейс, отлаживать, понимать и анализировать код.
Если вы не знакомы с инструментом Jetpack Compose, ознакомьтесь с руководством по использованию Compose . Многие принципы разработки для мобильных приложений, используемые в Compose, применимы и к разработке для телевизоров. Подробнее о преимуществах декларативной структуры пользовательского интерфейса см. в разделе «Почему Compose» . Для получения дополнительной информации также посетите репозиторий с примерами Compose для телевизоров на GitHub .
В этом запросе запрашивается помощь по добавлению поддержки Android TV в ваше приложение с помощью Jetpack Compose for TV вместо Leanback. Use Jetpack Compose for TV as part of the response instead of Leanback. AI Prompt
Узнайте, как добавить поддержку Android TV.
How do I add support for Android TV to my application?
Совместимость
Compose for TV работает на телевизорах Android с версией Android 5.0 (уровень API 21) или выше. Для использования версии 1.0 Compose for TV требуется версия 1.3.0 библиотек androidx.compose и Kotlin 1.7.10.
Настраивать
Использование Jetpack Compose на Android TV аналогично использованию Jetpack Compose для любого другого проекта Android. Главное отличие заключается в том, что Compose для ТВ добавляет библиотеки, предлагающие компоненты, оптимизированные для телевизоров, и упрощает создание пользовательских интерфейсов, адаптированных под телевизор. В некоторых случаях эти компоненты имеют те же имена, что и их аналоги, не предназначенные для телевизоров, например, androidx.tv.material3.Button и androidx.compose.material3.Button .
Зависимости инструментария Jetpack Compose
Для использования Compose для ТВ добавьте зависимости инструментария Jetpack Compose в файл build.gradle вашего приложения следующим образом:
Котлин
dependencies { val composeBom = platform("androidx.compose:compose-bom:2026.02.01") implementation(composeBom) // General compose dependencies. implementation("androidx.activity:activity-compose:1.12.4") implementation("androidx.compose.ui:ui-tooling-preview") debugImplementation("androidx.compose.ui:ui-tooling") // Compose for TV dependencies. implementation("androidx.tv:tv-material:1.0.0") }
Классный
dependencies { def composeBom = platform('androidx.compose:compose-bom:2026.02.01') implementation composeBom // General compose dependencies. implementation 'androidx.activity:activity-compose:1.12.4' implementation 'androidx.compose.ui:ui-tooling-preview' debugImplementation 'androidx.compose.ui:ui-tooling' // Compose for TV dependencies. implementation 'androidx.tv:tv-material:1.0.0' }
Что изменилось?
Компоненты пользовательского интерфейса телевизора разработаны для гостиной, имеют четкие индикаторы фокусировки и удобную для пульта дистанционного управления структуру ввода . Подробную информацию об использовании этих компонентов см. в руководствах по дизайну пользовательского интерфейса телевизора .
По возможности используйте телевизионную версию API, чтобы воспользоваться всеми преимуществами этих функций.
Хотя технически возможно использовать мобильную версию Compose Material, она не оптимизирована для уникального стиля взаимодействия на Android TV. Кроме того, смешивание Compose Material с Compose Material из Compose для ТВ может привести к неожиданному поведению. Например, поскольку каждая библиотека имеет свой собственный объект MaterialTheme , существует вероятность несогласованности цветов, типографики или форм при использовании обеих версий.
В следующей таблице показаны различия в зависимости между телевидением и мобильной связью:
| Зависимость от телевидения (androidx.tv.*) | Сравнение | Зависимость от мобильных устройств (androidx.compose.*) |
|---|---|---|
| androidx.tv:tv-material | вместо | androidx.compose.material3:material3 |
Дополнительные ресурсы
Руководства по дизайну телевизоров
Обзор специализированных телевизионных компонентов для создания пользовательских интерфейсов со ссылками на соответствующие ресурсы для разработчиков.Образец каталога материалов для телевидения
Приложение-каталог, демонстрирующее, как реализовать принципы Material Design с помощью Compose for TV.Образец JetStream
Приложение для потоковой передачи мультимедиа, демонстрирующее использование TV Compose в типичном приложении Material Design и с реальной архитектурой.Введение в создание музыки для телевидения
В этом практическом занятии пошагово рассматривается создание приложения видеоплеера с экраном просмотра каталога и экраном с подробной информацией.
Дополнительная информация
Изучите эти руководства, чтобы узнать о создании превосходных оптимизированных для телевидения платформ: