Материал из Module developer
Требования для добавления модулей в iRidium store
Для размещения модуля в магазине модулей необходимо придерживаться следующих правил:
Функциональность:
Модератор отклоняет модули, которые
- падают
- содержат видимые ошибки
- делают не то, что написано в описании
- содержат недокументированные или скрытые функции
- скачивают, устанавливают или запускают исполняемый код
- «бета», «демо» и «тестовые» версии
- содержат рекламные и маркетинговые материалы
- проводят некорректную диагностику или отображают неверные данные об устройстве
- показывают приложения других разработчиков
- неправильно используют push-оповещения
- посылают персональную или конфиденциальную информацию в push-оповещениях
- содержат вирусы, спам, рекламу
- используют сторонние механизмы монетизации
- быстро расходуют батарею или нагревают устройство
- не имеет отношения к управлению умным устройством или сервисом
- допускают нелегальный обмен файлами
- некорректно работают на нескольких панелях - отклоняется (исключение - если устройство ограничивает работу нескольких панелей, в таком случае это обязательно должно быть указано в описании)
- некорректно восстанавливают соединение с устройством после перезагрузки
- модуль имеет утечки памяти, которые приводят к падению приложения по прошествии определенного времени
- дизайн не соответствует style guide
Модератор МОЖЕТ отклонить модули, которые:
- повторяют модули, которые уже есть в магазине модулей
Прочее
- разработчики захламляющие магазин модулей разными версиями одного и того же модуля будут заблокированы.
- модули обязаны спрашивать разрешения пользователя на передачу данных о нем и сообщать где и зачем эти данные будут использованы.
Технические требования к модулю
- Должна быть оформлена заявка на разработку модуля в системе заявок модулей
- Модуль должен содержать минимум 1 подустройство
- В модуле должно быть такое количество подустройств, сколько рабочих зон поддерживает устройство
- Для каждого подустройства должен быть минимум один виджет
- Графическая часть модуля должна состоять из элементов, расположенных в галерее
- Модуль должен содержать такие Actions, Events, Conditions, которые описывают минимальный функционал устройства
- Скрипты должны быть разделены на драйверный, интерфейсные и общие
- В драйверных скриптах не должно быть упоминаний об интерфейсной части
- Все названия интерфейсных частей, должны иметь флаг локализации
- Все надписи в интерфейсе должны быть на английском языке
- Для регистрации модуля необходимо корректно заполнить описание в форме регистрации модуля. Описание должно соответствовать разработанному модулю
- Необходимо использовать функции из области имен module вместо IR
- Для всех Remote необходимо реализовать версию под планшет и смартфон
Правила тестирования модуля перед публикацией
Перед публикацией модуля необходимо:
- Проверить что модуль имеет корректное описание, скриншоты и иконку
- Проверить все надписи. Они должны быть на английском языке и не содержать ошибок
- Проверить функционал модуля. Все функциональные элементы должны работать и не вызывать ошибок в скриптах
- Проверить что модуль понимает что связь с устройством потеряна и показывает пользователю информацию об этом
- Проверить что модуль восстанавливает соединение с устройством и продолжает корректно работать после сворачивания и разворачивания приложения
- Проверить что модуль работает на 2-ух панелях одновременно
- Проверить что модуль работает на сервере
- Проверить что работают все Actions, Events, Conditions
- Проверить корректность Setup файла и корректность изменения настроек
- Проверить что модуль имеет дизайн для планшета и телефона
- Если в модуле есть поля для ввода текста, то надо проверить что при нажатии на поле открывается клавиатура
- Проверить модуль на утечки памяти. Для этого надо запустить модуль на панели и оставить его работать на 1 день. По истечению одного дня модуль должен продолжать корректно работать