Процесс разработки приложения

advertisement
LG ELECTRONICS RUSSIA R&D LAB.
Инструкция по разработке
приложений
LG Smart TV Apps Contest 2013-2014
LG Smart TV Platform Overview. Application types. HTML5/CSS3 and LG Smart TV Open API.
Development process. LG Developer site. Apps Digital Signing. Upload to Seller Lounge. QA process.
Содержание
Что представляет собой платформа LG Smart TV? ..................................... 2
Разрабатывать для LG Smart TV – легко! ..................................................... 3
Какие возможности доступны разработчику? ............................................... 4
Media Player Plugin / Broadcast Plugin ........................................................ 4
Ввод информации....................................................................................... 4
Параметры устройства ............................................................................... 4
Реклама и монетизация ............................................................................. 5
Сетевое взаимодействие ........................................................................... 5
Эффекты, анимация и звук ........................................................................ 5
Процесс разработки приложения .................................................................. 6
Тестирование на LG Smart TV ....................................................................... 7
Загрузка в магазин приложений .................................................................... 8
Шаг 1: Basic Info .......................................................................................... 8
Шаг 2: Files upload ...................................................................................... 9
Шаг 3: Options ............................................................................................. 9
Шаг 4: Submit............................................................................................... 9
Процедура тестирования ............................................................................. 10
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Что представляет собой платформа LG Smart TV?
Современная платформа LG Smart TV
делает возможным использование интернетсервисов прямо на экране телевизора.
Благодаря
этому,
в
телевизорах
и
медиаустройствах
LG
Smart
TV
пользователь получает быстрый и простой
доступ к сети интернет, аудио-, видео- и
другим
службам.
Основополагающий
элемент платформы – браузер. За счет него
достигаются широкие возможности интерактивных сервисов телевизора. А так
как телевизоры и медиаустройства LG Smart TV поддерживают различные
манипуляторы, в том числе и управление, подобное управлению
компьютерной мышкой, то их использование является простым и интуитивно
понятным действием. Основные элементы управления: классический ТВ-пульт
(Remote Control) и указка Magic Remote Controller. ТВ-пульт выступает в роли
клавиатуры. Указка Magic Remote Controller выступает в роли указателя мыши.
Пользовательский интерфейс телевизоров LG Smart TV сочетает в себе
возможности
доступа
к
неограниченному количеству контента
и
максимальную простоту и удобство управления содержимым. Это приводит к
необходимости унификации элементов управления и появлению требований к
UI/UX для приложений. Важно ознакомиться с актуальной версией руководства
по UI/UX
до начала разработки приложения. Помимо требований к
приложениям, руководство также иллюстрирует наиболее удобные и
интуитивно понятные способы организации содержимого. Их тоже следует
взять на заметку, т.к. типичному пользователю намного проще
ориентироваться в прежде встречаемых типах организации UI, чем в ранее
неизвестных.
Основной точкой взаимодействия пользователя и разработчика
приложения для LG Smart TV является магазин приложений LG Smart World.
Помимо естественной для пользователя возможности установить приложение,
доступны элементы обратной связи с разработчиком, а именно, пользователи
могут оценивать приложения, оставлять комментарии и отзывы. Продавцу
приложения (часто, в роли продавца выступает сам разработчик) доступна
панель управления, которая аккумулирует и отображает информацию о
скачках в виде таблиц и графиков.
Платформа предлагает разработчикам изобилие систем и сервисов, с
помощью
которых
можно
создавать
удивительно
разнообразные
интерактивные сервисы для пользователей.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Разрабатывать для LG Smart TV – легко!
Для
того
чтобы
разрабатывать
интерактивные сервисы для телевизоров LG
Smart TV, не нужно обладать особыми
знаниями
специальных
языков
программирования.
Большинство
приложений построено на базе webтехнологий.
Любой web-разработчик может создать
приложение для LG Smart TV, т.к. в частном
случае оно представляет собой обычный набор web-страниц, которые
удовлетворяют техническим и UI/UX требованиям, однако, кроме webприложений платформа поддерживает ещё и другие типы приложений.
Типы приложений, поддерживаемые платформой:






Web (HTML5, CSS3)
Flash (Flash Lite, Action Script 2.0)
AIR (Action Script 3.0, Stage3D)
Unity 3D (Unity Script, GLES)
Marmalade (C++, LUA, GLES)
Native (C++, GLES)
Наиболее просто и удобно разрабатывать web-приложения, для которых,
помимо основных возможностей, поддерживаемых стандартами HTML5 и
CSS3, реализована поддержка исключительно телевизионных функций через
открытый для разработчика API1.
Большинство часто используемых компонентов приложения уже
реализованы и доступны разработчику в среде LG IDE, основанной на базе
Eclipse, что позволяет быстро и просто создавать сложные системы и их
элементы.
Чтобы протестировать приложение, не обязательно иметь телевизор LG
Smart TV, достаточно скачать пакет SDK2 для разработчика, в который
включены эмуляторы телевизоров всевозможных модельных линеек. Помимо
эмулятора, SDK включает себя среду LG IDE, а также некоторые полезные
утилиты, описания платформы и первичные инструкции по разработке
приложений.
API (от. англ Application Programming Interface) – Интерфейс программирования приложений, набор
готовых классов, процедур, функций, структур и констант, предоставляемых приложением для использования
во внешних программных продуктах.
2 SDK (от англ. Software Development Kit) — комплект средств разработки.
1
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Какие возможности доступны разработчику?
Основная задача телевизора - это отображение контента. Самые
распространённые подзадачи представляют собой совокупность задач
воспроизведения видеоконтента (фильмов, сериалов, телепередач из эфира и
др.). Поэтому наиболее сильная сторона LG Smart TV - это встроенный
функционал видео-плеера, который поддерживает массу различных аудио-,
видео- кодеков, контейнеров и способов доставки контента. Рассмотрим
основные ключевые элементы, которые готовы к использованию и доступны
web-разработчику:
Media Player Plugin / Broadcast Plugin
Воспроизведение потокового аудио- и видеоконтента, пауза, перемотка,
встроенная поддержка списков воспроизведения, управление отображением
3D контента, управление скоростью воспроизведения и получение
посредством событий модели статуса плеера и ошибок, возникающих в
процессе воспроизведения.
Поддерживаемые потоки: http, hls, rtp, rtsp, mms, rtmp (Flash).
Шифрование контента: AES-128, Verimatrix, Widevine, PlayReady/WMDRM
и Adobe DRM.
Разработчику также доступна возможность управления субтитрами и
текущей аудиодорожкой.
Воспроизведение эфирного сигнала, доступ к названиям каналов и
телепередач.
Ввод информации
 обычный пульт / Remote Controller Unit (RCU)
 Magic Remote Controller Unit (MRCU)
 USB-клавиатура и мышь
 ввод текста голосом
 посредством экранной клавиатуры
 через смартфон
 через сеть
Для ввода используется обычная событийная модель в webприложениях. RCU представляет собой подобие клавиатуры, а MRCU – мыши.
Голосовой ввод доступен через открытый API, а экранная клавиатура уже
разработана и легко внедряется в разрабатываемое приложение. API для
ввода через смартфон также открыт и прост в использовании. Сетевые
интерфейсы ввода описаны в рамках AppToApp plugin.
Параметры устройства
Открытый API телевизора также предоставляет доступ к внутренним
состояниям. Доступны списки поддерживаемых возможностей, информация о
сетевых настройках, текущий язык, страна, часовой пояс, информация о
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
текущей платформе, вызов служебных меню и приложений. Телевизор
уведомляет о моменте окончания ввода с помощью MRCU, об отслеживании
состояния оперативной памяти. Web Storage, который доступен в рамках
HTML5, позволяет легко и просто хранить настройки приложения, а Webworkers позволяют создавать сложные многопоточные системы.
Реклама и монетизация
Разработчику доступны готовые наборы для монетизации приложения
посредством баннерной и видеорекламы. Видеореклама поддерживает preApproll, pre-roll и post-roll. С помощью готовых рекламных инструментов можно
легко и просто получать доход от приложения. Также само приложение можно
продавать в магазине. Помимо продажи приложения в целом, можно
организовать совершение покупок и внутри приложения посредством Billing
API. События покупки могут поддерживать настраиваемые методы
уведомления серверных элементов. Разработчику доступны методы
получения идентификаторов пользователей, идентификаторов устройств и
вызов личного кабинета пользователя LG Smart TV.
Сетевое взаимодействие
Взаимодействие с устройством LG Smart TV через сеть позволяет
получать список каналов, установленных и предустановленных приложений,
управление громкостью, переключение каналов и другие полезные
возможности. Помимо внешнего сетевого взаимодействия, также доступы
Web-Sockets и асинхронные запросы.
Эффекты, анимация и звук
Встроенная поддержка контекста 2d элемента Canvas позволяет
динамически генерировать графический контент приложения, а поддержка
CSS3 открывает возможности легкого и удобного использования анимации
внутри приложения.
Звуковая подсистема выделена и доступна через Sound Plugin, работает
вне зависимости от того, воспроизводиться в данный момент аудиотрек или
нет. Поддерживается до 7 звуковых каналов для одновременного
воспроизведения.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Процесс разработки приложения
Разработка приложения должна начинаться с
регистрации
на
сайте
LG
Developer
(http://developer.lge.com). В процессе регистрации от вас потребуется
ознакомление с пользовательским соглашением и адрес действительной
электронной почты. В первую очередь нужно ознакомиться с актуальными
требованиями к UI/UX и скачать LG Smart TV SDK.
В случае, если Вы планируете разрабатывать приложение,
предоставляющее конечному пользователю видеосервисы, Вам необходимо
сверить Ваши протоколы, контейнеры и кодеки с поддерживаемыми
платформой LG Smart TV.
Для тестирования можно использовать браузер на базе WebKit,
например, Safari. Однако, следует помнить, что если Вы используете открытый
API телевизора, то он будет недоступен из обычного браузера. В этом случае,
вам придет на помощь набор эмуляторов, входящий в состав LG Smart TV
SDK. Контролировать потребляемый вашим приложением объем оперативной
памяти телевизора удобно через утилиту “монитор ресурсов”, которая также
входит в состав SDK для разработчика.
Ещё одним важным моментом является отличие конечного набора
кодеков, поддерживаемых форматов и контейнеров у эмулятора и реального
ТВ. Поэтому, окончательный внешний вид и работоспособность функционала
по воспроизведению видео на ТВ можно увидеть лишь на реальном
устройстве. Также существует ряд других ограничений по тестированию на
эмуляторах, в частности, Billing API, однако, эти отличия носят строго
специфичный характер, и в большинстве случаев тестирование на реальных
устройствах не обязательно.
Сам код приложения можно писать в любом удобном текстовом
редакторе. Однако, компоненты из состава LG IDE позволят вам существенно
сократить время на разработку базовых элементов приложения, например,
видео-плеера или слайд шоу.
Доступна возможность загрузки приложения по ссылке (подобно сайту в
интернете) и упаковка приложения, как файлы, для загрузки в телевизор.
Второй вариант часто позволяет существенно сократить время запуска
сервиса.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Тестирование на LG Smart TV
Основным инструментом тестирования приложений в процессе
разработки является эмулятор LG Smart TV Emulator 20xx. Год в конце
названия соответствует модельной линейке.
Протестировать приложение в условиях, максимально приближенных к
реальным, Вы можете посредством USB Flash. Для этого его необходимо
предварительно подготовить согласно инструкции, которая имеется на сайте
LG Developer.
Этапы тестирования:
 Собрать только необходимые файлы для работы приложения в
одном каталоге. Проверить работоспособность.
 Создать zip-архив этого каталога.
 Зайти на сайт Developer Lounge под своим логином. В разделе Tools
& SDK выбрать пункт AppTest.
 Заполнить поля, выбрать иконку приложения и загрузить архив на
сайт.
 После подтверждения создания приложения Вам станет доступна
кнопка «Download». Скачайте его.
 Распакуйте в корневой каталог USB Flash /lgapps/installed/папка с
номером приложения – содержимое архива. Следуйте инструкциям.
Подключите USB Flash Drive в USB порт телевизора, помеченный как
«USB APPS». В процессе создания приложение получает цифровую подпись,
для проверки которой телевизор должен иметь свободный доступ в интернет,
иначе ваше приложение не будет отображено в списке.
Если у Вас возникают трудности с тестированием, убедитесь что у Вас
корректно установлена страна LG Smart TV, Вы запогинены под своими
учетными данными и нет проблем с доступом в сеть интернет.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Загрузка в магазин приложений
На этом этапе предполагается, что Ваше приложение
успешно разработано и протестировано.
Также предполагается, что скачаны и корректно
заполнены документы “Required Documents for Application
Submission to LG Seller Lounge” (сайт LG Developer 
Resource Center  Smart TV  Documentation  Technical
Notes). Self Evaluation Check list не должен содержать пустых и «fail» полей.
Только «pass» или «N/A».
Шаг 1: Basic Info
Вам необходимо ввести название и описание
(располагается далее, в пункте Display Information)
публикуемого приложения строго на английском языке,
несмотря на то, что Вы рассматриваете страну / регион
продаж, которая/-ый не подразумевает использование
английского языка.
Рейтинг приложения – это его возрастные ограничения. Обязательно
укажите адрес поддержки (эл. почта).
Далее укажите зону обслуживания. Имейте в виду, что если Вы
указываете зону обслуживания «Global», то в случае расширения всей зоны
обслуживания LG Smart TV (LG Smart World) зона обслуживания Вашего
приложения будет автоматически расширена на добавившуюся страну или
регион.
В случае локальной зоны обслуживания, автоматического расширения
происходить не будет.
В случае, если Вы публикуете игру в глобальный маркет, Вам
необходимо получить сертификат Game Rating Certificate, подтверждающий
возрастные ограничения игры (если они имеют место быть) для Кореи и
Бразилии.
Далее подтвердите стоимость приложения, даже если Вы хотите
оставить нулевую, и возрастные ограничения, даже если их нет.
В разделе
отображаемой информации (Display Information) нужно
загрузить заранее подготовленную иконку приложения (файл png, без
прозрачного фона, минимум 200x200 пикселей), 3 скриншота в формате jpg, не
более 200кб каждый.
Для локализации названия и описания Вашего приложения используйте
пункт Add Language.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Шаг 2: Files upload
Первым делом на этом шаге необходимо загрузить сопроводительную
документацию, сертификат Game Rating Certificate (если публикуется игра) и
описание позиций для продажи внутри приложения (если таковые имеются).
Далее Вам нужно загрузить само приложение (должно быть упаковано в
архив zip) или указать ссылку на него.
Версия SDK управляет модельными линейками, на которых появиться
Ваше приложение. Если Вы выберете версию менее, чем 01.05.000, то Ваше
приложение появится в магазине LG Smart World только для линейки LG Smart
TV 2011 года. Если указать версию SDK 01.05.000, то приложение выйдет на
линейках ТВ всех годов. В случае, если выбрана версия SDK 02.00.000, то
приложение станет доступным на линейке 2012-го года и выше.
Соответственно, если выбрать SDK 03.00.000, то приложение выйдет на
линейке ТВ 2013 и выше.
Обратите
платформами.
внимание
на
версию
SDK,
соотнесите
с
целевыми
Для каждого обновления приложения должна быть сформирована новая
ссылка (или архив zip) и загружена в Seller Lounge.
Укажите технические характеристики приложения.
Помните, что Ваше приложение в обязательном порядке должно быть
управляемо с помощью пульта MRCU (Magic Remote Controller Unit), который
является
аналогом
манипулятора
«мышь».
Приложения,
которые
поддерживают помимо «мыши» управление с помощью обычного пульта
дистанционного управления, в пункте «Supports Only Magic Motion Remote»
должны содержать ответ «No».
Шаг 3: Options
Если в приложении используется рекламная система LG Ad или
организованы продажи с использованием Billing API, то необходимо на этом
шаге внести корректную информацию об используемой службе. Чтобы Вы
могли использовать данные службы, необходимо предоставить LG платежные
реквизиты и дождаться их подтверждения.
Шаг 4: Submit
Проверьте
корректность
введённых
данных,
картинки и иконку и, в случае необходимости, оставьте
комментарий команде тестирования QA Management
Team в Корее. Нажмите «Submit».
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Процедура тестирования
Обычный цикл тестирования нового приложения
длится около 10 дней, после чего, в случае отсутствия
ошибок и нежелательного контента, приложение
появляется в магазине на ТВ.
Возможные статусы публикуемого приложения:
 Save as draft (приложение ни разу не
публиковалось)
 Revise (было изменено, но не отправлено на проверку)
 Gate Keeper Review Request (запрос на пре-тест)
 App QA request (запрос на полную проверку)
 App QA approved (приложение опубликовано)
 App QA rejected (публикация отклонена)
 Delete request (запрос удаления)
 Delete (приложение удалено)
 Pretest (проверка документации)
 Function Testing (проверка функциональности)
 Content Testing (проверка содержимого)
 Final Review (заключительный этап проверки)
Порядок смены статусов в случае успешного прохождения процесса
тестирования следующий: Save as draft  Gate Keeper Review Request  App
QA request  Pretest  Function Testing  Content Testing  Final Review 
App QA Approved.
Если у Вас возникают спорные вопросы по тестированию, Вы можете
задать их в разделе «1:1 Inquiry».
Так же следует писать в службу «1:1 Inquiry», если тестирование Вашего
приложения по каким то причинам было затянуто во времени.
Инструкция по разработке приложений. LG Smart TV Apps Contest 2013-2014.
Download