Tizen Samsung TV SDK 12.06.2015

Не так давно Samsung выпустил новую линейку Smart TV телевизоров на базе новой для Smart TV платформы Tizen. Аналогично абсолютному большинству платформ Smart TV разработка приложений под Tizen также осуществляется на JavaScript. По сравнению со старой платформой Samsung Orsay Tizen прежде всего отличается повышенными ограничениями безопасности, измененным API, а ну и конечно некоторыми новыми возможностями.

Для облегчения жизни разработчиков Samsung выпустил специальный SDK для разработки по Tizen Smart TV. В состав SDK входит IDE на базе Eclipse с расширением, позволяющими осуществлять настройку и сборку виджетов приложений под Tizen Smart TV, веб-симулятор, позволяющий тестировать базовый функционал приложения (навигацию и т.д), а также полноценный эмулятор телевизора, с возможностью отладки. Стоит отметить, что ни IDE, ни симулятор не представляют принципиальной ценности для разработки. Бесполезная сама по себе IDE является на данный момент единственным инструментом для сборки проекта.

Samsung Tizen TV IDE

Особый интерес заслуживает эмулятор, позволяющий тестировать приложения при отсутствии реального устройства. Сам по себе эмулятор достаточно требователен не только к софту, но и железу (мне например удалось завести его только на 1 машине из 6) и доступен только для платформ Windows и Ubuntu. Эмулятор не стабилен (касается версии 1.2), а API в некоторых случаях может отличаться от API реального устройства сигнатурами методов, что в свою очередь не очень приятно.

Samsung Tizen TV Web Simulator

SDK существует в двух вариантах сборки — публичной и приватной/партнерской. Вторая отличается расширенными возможностями API. поддержка DRM доступна только для приватной версии. Принципиально сборки отличаются ключами издателя, которыми осуществляется подпись виджетов, собранных при помощи IDE. Для приложения подписанному ключей публичного SDK доступ к приватному API будет закрыт.

API Tizen Smart TV подразделяется на три группы. Первая относится к поддержке стандартного API HTML5. Как уверяет поддержка Samsung это API практически на 100% соответствует стандартам W3C.

Web Device APIs включает в себя набор мультидевайсного API Tizen слегка расширенного функционалом для работы с TV: управление каналами, экраном TV, пультом дистанционного управления и т.д. Как правило, большинство этого API относится к платформе Tizen и является общим для всех устройств.

К третьей группе относится Samsung Product API. Сюда входит API, принадлежащее Samsung. данное API включает в себя функции управления нативным плеером TV (AVPlay), DRM и т.д. Для доступа к большинству функций этого API требуется приватный SDK.

Отдельно хочется отметить обновленную поддержку Samsung Multiscreen, позволяющую осуществлять взаимодействие TV с мобильными устройствами в рамках одной сети.

Что касается ограничений по безопасности, API телевизора теперь не доступно в полном объеме для хост приложений, что явилось прежде всего болью для разработчиков трестировавших приложения при помощи загрузки кода в через фреймы.

Наряду с появлением нового, характерного для платформы Tizen API, изменения претерпело и достаточно старое API. Например, API плеера AVPlay, доступного еще на старой платформе также претерпело изменения и несовместимо со старым API.

На данный момент Tizen Smart TV поддерживает Playready и Widevine, поддержка Verimatrix по слухам появится в ближайшее время.

by 12.06.2015