VLC — бесплатный кроссплатформенный мультимедийный проигрыватель с открытым исходным кодом, разработанный в рамках проекта VideoLAN , — призван предоставить пользователям возможность воспроизводить видеофайлы любого типа в любом месте, независимо от их устройства или размера экрана. Чтобы обеспечить оптимальное качество просмотра как можно большему количеству пользователей, команда VideoLAN усердно работала над адаптацией приложения VLC для различных платформ, включая Android TV и устройства с большим экраном, такие как планшеты и Chromebook .
Что они сделали
Приложения на устройствах Android TV предлагают уникальные возможности просмотра по сравнению с приложениями на мобильных устройствах. Телезрители сидят дальше от экрана и обычно ожидают увидеть всю свою библиотеку контента в одном представлении (как в традиционном телегиде), в то время как мобильные пользователи ожидают увидеть только одно видео, которое они выбрали для просмотра. Кроме того, пользователи управляют приложениями на Android TV с помощью пульта дистанционного управления, а мобильные приложения работают исключительно на сенсорном экране.
Хотя VideoLAN решила сохранить большую часть мобильного пользовательского интерфейса VLC в последней версии приложения ( 3.2 ), команде пришлось сделать несколько шагов дальше, чтобы обеспечить оптимальную работу как на мобильных устройствах, так и на Android TV.
Оптимизация для пультов дистанционного управления телевизором
Первым шагом VideoLAN было обеспечение возможности удобной навигации по пользовательскому интерфейсу видеоплеера приложения с помощью пульта дистанционного управления с устройств Android TV, у которых есть только панель управления и несколько кнопок. Например, команда переместила параметры видеоплеера на боковую панель, чтобы полный список можно было легко щелкнуть на смартфоне или планшете и легко просмотреть с помощью пульта дистанционного управления.
Настройка макета Leanback Library
На устройствах Android TV пользователи VLC могут видеть все свои категории видео одновременно, а не объединять категории, как на мобильных устройствах. Чтобы оптимизировать эту функцию просмотра, библиотека Leanback использует расширяемые фрагменты, что позволяет разработчикам легко создавать насыщенные анимированные возможности для каждого фрагмента контента.
VideoLAN создала собственный пользовательский интерфейс просмотра, позволяющий осуществлять сортировку и прокрутку с помощью плавающей кнопки действия , а также добавила анимацию для каждого параметра прокрутки. Команда также создала функцию быстрой прокрутки, аналогичную их приложению Android Auto, которая позволяет пользователям быстро просматривать видеоконтент с помощью поиска по первой букве вместо необходимости прокручивать весь список.
Реализация совершенно нового пользовательского интерфейса для Android TV привела к значительной рефакторизации кода — именно здесь нам пригодилась архитектура Model-View-ViewModel (MVVM), предложенная компонентами архитектуры Android . Следуя этим архитектурным рекомендациям , команде удалось создать четкое разделение между кодом пользовательского интерфейса и логикой приложения, что упростило совместное использование кода логики приложения после написания нового пользовательского интерфейса. Теперь один и тот же код используется в мобильном и ТВ-интерфейсе VLC.
Команда также работала с преобразованиями Livedata , чтобы создать карту с элементами, сгруппированными по видеоинформации (например, названию, дате добавления или продолжительности видео), начиная с уникального списка, который они использовали на мобильных устройствах. Поскольку Android TV отображает видео в альбомном режиме, команда разбила контент на несколько строк, а не размещала его в вертикальном прокручиваемом списке.
Интеграция голосового управления и функции «играть дальше»
Наконец, VideoLAN реализовала MediaSession , позволяющую управлять воспроизведением с помощью голосовых команд через Google Assistant. Команда также добавила в код приложения TV функцию «Воспроизвести дальше», которая позволяет пользователям возобновлять воспроизведение ранее начатого видео прямо с главного экрана Android TV.
Результаты
Как бесплатный медиаплеер с простой навигацией, VLC лучше всего работает на больших экранах. Команда VideoLAN продолжает получать положительные отзывы от пользователей по всему миру, а интернет-провайдеры во Франции и Швейцарии даже попросили добавить VLC в качестве приложения по умолчанию на своих приставках.
«Телевизоры являются естественным домом для такого медиаплеера, как VLC, поэтому мы знали, что существует большое сообщество людей, желающих использовать приложение на Android TV», — сказал Жан-Батист Кемпф, президент VideoLAN. «На самом деле это была самая простая платформа для оптимизации, поскольку мы смогли повторно использовать 95% кода Android и были в восторге от результатов».
Благодаря приложению, разработанному для устройств от смартфонов с маленьким экраном до телевизоров с большим экраном, VideoLAN призван привлечь больше мобильных пользователей, где бы они ни предпочитали смотреть свои любимые видео.
Начиная
Ознакомьтесь с некоторыми рекомендациями по оптимизации приложений для Android TV .