Розробка Android TV додатку: навігація, плеєр, Google TV

Користувач натискає «вниз» на пульті — фокус стрибає в кінець списку, пропускаючи кнопку «Улюблене». Знайома ситуація? Це класична помилка Focus Engine в Android TV додатках. Ми проєктуємо мультимедійні додатки, в яких навігація передбачувана, плеєр адаптується під екран, а контент потрапляє в реком

Розробка та підтримка будь-яких видів мобільних додатків:

Інформаційні та розважальні мобільні програми
Новинки, ігри, довідники, онлайн-каталоги, погодні, фітнес та здоров'я, туристичні, освітні, соціальні мережі та месенджери, квіз, блоги та подкасти, форуми, агрегатори
Мобільні програми електронної комерції
Інтернет-магазини, B2B-додатки, маркетплейси, онлайн-обмінники, кешбек-сервіси, біржі, дропшиппінг-платформи, програми лояльності, доставка їжі та товарів, платіжні системи
Мобільні програми для управління бізнес-процесами
CRM-системи, ERP-системи, управління проектами, інструменти для команди продажів, облік фінансів, управління виробництвом, логістика та доставка, управління персоналом, системи моніторингу даних
Мобільні програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, платформи надання електронних послуг, платформи кешбеку, відеохостинги, тематичні портали, платформи онлайн-бронювання та запису, платформи онлайн-торгівлі

Це лише деякі з типів мобільних додатків, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 1734 послуг
Розробка Android TV додатку: навігація, плеєр, Google TV
Складний
~1-2 тижні

Наші компетенції:

Часті запитання

Останні роботи

  • image_mobile-applications_feedme_467_0.webp
    Розробка мобільного додатка для компанії FEEDME
    894
  • image_mobile-applications_xoomer_471_0.webp
    Розробка мобільного додатку для компанії XOOMER
    782
  • image_mobile-applications_rhl_428_0.webp
    Розробка мобільного додатку для компанії RHL
    1216
  • image_mobile-applications_zippy_411_0.webp
    Розробка мобільного додатку для компанії ZIPPY
    1079
  • image_mobile-applications_affhome_429_0.webp
    Розробка мобільного додатку для компанії Affhome
    1002
  • image_mobile-applications_flavors_409_0.webp
    Розробка мобільного додатку для компанії FLAVORS
    597

Користувач натискає «вниз» на пульті — фокус стрибає в кінець списку, пропускаючи кнопку «Улюблене». Знайома ситуація? Це класична помилка Focus Engine в Android TV додатках. Ми проєктуємо мультимедійні додатки, в яких навігація передбачувана, плеєр адаптується під екран, а контент потрапляє в рекомендації Google TV. Розробка ведеться під ключ — від прототипу до публікації в Google Play. За 5 років ми реалізували 12 OTT-проєктів, накопичений досвід гарантує якість і відповідність вимогам Google.

Як Android TV відрізняється від Google TV?

Google TV — надбудова над Android TV з іншим лаунчером і вимогами до контенту. Додаток для Android TV може некоректно відображатися на Google TV через відмінності в обробці рекомендацій та deep link. Враховуємо це на етапі проєктування, щоб уникнути проблем після релізу.

Як налаштувати D-pad навігацію в складних макетах?

Головна відмінність від мобільної розробки — користувач керує D-pad пульта. Фокус переміщується через Android Focus Engine, але вкладені горизонтальні RecyclerView всередині вертикального (Netflix-патерн) ламають логіку: при натисканні «вниз» фокус може перескочити в кінець екрана. Рішення — кастомний LinearLayoutManager з перевизначеним onInterceptFocusSearch(). Без цього користувач не добирається до потрібного ряду.

Бібліотека Leanback (androidx.leanback) надає BrowseSupportFragment та RowsSupportFragment з нативною підтримкою D-pad, але вона вважається застарілою. Jetpack Compose для TV (androidx.tv:tv-compose) пропонує TvLazyRow та TvLazyColumn з декларативним керуванням фокусом. Для нових проєктів обираємо Compose TV, для legacy — Leanback.

Характеристика Leanback Compose TV
Архітектура Фрагменти, View Декларативна Compose
Навігація Автоматична, обмежена Кастомна через FocusRequester
Продуктивність Вища на старих пристроях Краще на нових (API 24+)
Швидкість розробки Нижча через шаблони Вища, менше коду
Підтримка Google TV Обмежена Повна

Як інтегрувати ExoPlayer з адаптивною якістю?

androidx.media3:media3-exoplayer — стандарт для Android TV. Критично правильно налаштувати TrackSelector: вибір відео треку має враховувати роздільність дисплея, а не просто брати максимальне — 4K на 1080p екрані марно витрачає пропускну здатність. DRM Widevine L1 доступний на сертифікованих пристроях (SHIELD TV, Chromecast з Google TV). Перевіряємо рівень через MediaDrm.isCryptoSchemeSupported(WIDEVINE_UUID) та запит securityLevel. Media3 документація рекомендує такий підхід.

Інтеграція з рекомендаціями Google TV

Google TV відображає персоналізовані рекомендації з додатків через API WatchNextPrograms. Потрібен ContentProvider для заповнення прогресу перегляду, оновлення статусу та видалення завершених програм. Fire TV використовує інший механізм — App-to-App Communication через Intent для deep link в контент.

Як проходить розробка: покроково

  1. Аналіз вимог до контенту, монетизації та цільової платформи.
  2. Проєктування навігації та focus-менеджменту.
  3. Інтеграція ExoPlayer з кастомними налаштуваннями треків і DRM.
  4. Реалізація рекомендацій Google TV (WatchNext Programs).
  5. Тестування на 5+ пристроях (NVIDIA Shield, Chromecast з Google TV, Xiaomi Mi Box, TCL TV, Sony Bravia).
  6. Підготовка графіки для лаунчера та іконок.
  7. Збірка та публікація в Google Play з дотриманням Android TV developer guide.
  8. Технічна підтримка після релізу (1 місяць).

Сертифікація та публікація в Google Play

Додаток публікується з <uses-feature android:name="android.software.leanback"/> та <uses-feature android:name="android.hardware.touchscreen" android:required="false"/>. Останнє обов'язкове — без нього Play Store не покаже додаток на TV. Google перевіряє: навігація доступна з D-pad, немає залежностей від тача, коректно обробляються KEYCODE_BACK та KEYCODE_DPAD_*.

Що входить в роботу

  • Вихідний код з коментарями та документація по збірці.
  • Конфігурація CI/CD (GitHub Actions, Fastlane) для автоматичної публікації в TestFlight та Google Play.
  • Доступи до консолей розробника (App Store Connect, Google Play Console).
  • Тестовий звіт по 5 пристроях з різними версіями ОС.
  • Навчання команди замовника по роботі з адмінкою контенту.
  • Пост-релізна підтримка протягом 1 місяця (виправлення критичних багів).

Типові помилки при розробці

  • Ігнорування Focus Engine — користувач не може дістатися до кнопок.
  • Відсутність обробки KEYCODE_BACK — додаток не закривається.
  • Неправильна конфігурація TrackSelector — буферизація 4K на 1080p екрані.
  • Пропуск метаданих для Google TV — немає рекомендацій.
  • Забута залежність android.hardware.touchscreen:false — додаток не видно.

Терміни та вартість

Тип додатку Терміни
Інформаційний на Leanback від 5 до 9 тижнів
VOD з DRM, рекомендаціями, офлайном від 12 до 20 тижнів

Вартість розраховується індивідуально після аналізу контенту та монетизації. Безкоштовно оцінимо ваш проєкт. Зв'яжіться з нами, щоб обговорити деталі. Отримайте консультацію по вашому проєкту.