Эта статья — перевод оригинальной статьи Aleksandr Denisov "Flutter for Apple TV"
Также я веду телеграм канал “Frontend по-флотски”, где рассказываю про интересные вещи из мира разработки интерфейсов.
Вступление
В марте 2021 года Flutter получил серьезное обновление, которое позволяет разработчикам создавать красивые, быстрые и портативные приложения для самых разных платформ. С Flutter 2.x вы можете использовать одну и ту же кодовую базу для отправки нативных приложений в мобильные операционные системы, такие как iOS и Android, в настольные операционные системы, такие как Windows, macOS и Linux, а также в браузеры, такие как Chrome, Firefox, Safari или Edge. Также команда Flutter дала немного информации о Flutter для встраиваемых устройств, но нигде официально не было описано, как с помощью Flutter можно разрабатывать приложения для операционных систем Smart TV.
Если попытаться поискать в StackOverflow или GitHub информацию по теме Flutter для TV, то можно найти разрозненные куски информации от сообщества, в основном об экспериментах с Android TV, и практически ничего о других платформах. Причина этого в том, что Android TV не является платформой Flutter, поддерживаемой для производственного использования, а Apple TV вообще не поддерживается.
Но тем не менее, если заглянуть в репозиторий Flutter на GitHub, можно найти массу вопросов, связанных с разработкой приложения для Smart TV, и даже не только Android TV, но и Apple TV. Можно сделать вывод, что, несмотря на отсутствие официальной поддержки, разработчики продолжают попытки создавать приложения для смарт-телевизоров.
Собственно, я не исключение. Перед моей командой стояла задача создать приложение сразу для нескольких платформ, включая Smart TV Platforms. Нам нужно было поддерживать семь платформ с одной и той же кодовой базой: iOS, Android, Web, Android TV, Apple TV, Fire TV и Tizen. Мы оказались разработчиками, которые пытались создать приложение не только для мобильных и веб-приложений, но и для ТВ-платформ.
Именно поэтому я решил написать эту статью, чтобы поделиться некоторым опытом, который мы получили во время разработки, с какими трудностями мы столкнулись, и какие у нас были проблемы.
Но первый вопрос, который должен возникнуть — «зачем», зачем вам вообще может понадобиться использовать Flutter для создания ТВ-приложений. У меня есть несколько ответов на этот вопрос. Во-первых, очень круто, если можно просто взять уже написанное Flutter-приложение и просто запустить его на телевизоре. Во-вторых, и это гораздо важнее, если вы планируете разработать приложение, которое будет поддерживать телевизионные платформы, Flutter позволит вам сэкономить много ресурсов.
На самом деле, чем больше платформ, использующих единую кодовую базу, вы поддерживаете, тем больше ресурсов вы экономите. Нет необходимости иметь отдельные команды разработчиков для ТВ-приложений, все может быть сделано одной командой. И это здорово!