Как стать автором
Обновить

Запах WebOS на S60 или Nokia WRT Widgets

Время на прочтение 3 мин
Количество просмотров 1.1K
STEWЯ очень долго игнорировал раздел «Web Technologies» на форуме нокиа, думая что там описываются приемы создания вебстраниц для мобильников. Как оказалось — зря. За ним скрывалось описание платформы WRT (Web RunTime), весьма удобного для веб-разработчика средства написания простых мобильных программ, называемых виджетами.

Виджет по сути представляет собой обычную веб-страницу, но для пользователя выглядит как отдельная самостоятельная программа, не отличимая от традиционных приложений. Для использования и написания виджетов не требуется symbian-сертификация, они представляют собой zip-архивы, но при этом устанавливаются автоматически, как и другие S60-приложения

На данный момент виджеты поддерживаются телефонами на платформах S60 3rd FP 2 и S60 5th (пополняемый список телефонов c поддержкой виджетов можно посмотреть здесь), также виджеты поддерживаются некоторыми S60-устройствами других производителй.


Т.к. в последних моделях телефонов S60 встроен браузер на основе WebKit, можно расчитывать на все возможности этого движка.
Nokia заявила поддержку следующих технологий:
  • HTML 4.01
  • XHTML Mobile Profiles
  • CSS Level 2 revision 1 (CSS 2.1), WAP CSS
  • JavaScript 1.5 (ECMA-262 3rd Edition)
  • DOM
  • Ajax

Также в виджетах используют Flash Lite 3, но он почему-то пока не заявлен на Nokia Library как официально поддерживаемый.
Функциональность виджетов не ограничивается возможностями встроенного браузера. Nokia расширила классический JavaScript, дав доступ к следующим функциям:

AccuWeather
WRT 1.0+

  • Хранение данных виджета (аналог cookies, которые недоступны, чаще всего применяется для настроек)
  • Изменение и назначение функций на кнопки в меню приложения (софт-клавиши)
  • Информации о системе и состоянии телефона
  • Подсветка клавиш и функция вибрации

WRT 1.1+

  • Доступ к информации об установленных приложениях, их запуск
  • Доступ к информации календаря
  • Доступ к адресной книге
  • Доступ к навигации
  • Доступ к информации о совершенных звонках (Log)
  • Доступ к информации о файлах в галерее (но отсутствует доступ к самим файлам)
  • Прием и отправка сообщений
  • Доступ к акселерометру

Виджеты не имеют доступа к камере, Bluetooth, управлению WiFi и файловой системе — в целях безопасности и из-за своей направленности. Впрочем, есть методика использования приложения-вебсервера (который кстати написан на питоне) для доступа к необходимой информации через него, по HTTP.
Как уже было упомянуто, виджет — зип архив(c расширением WGZ), содержимое которого от обычной веб-странички отличается только наличием XML файла-описания. Для ознакомления можно расковырять любой готовый виджет, например STEW (сам виджет, описание).

twitwianДля разработки сложных виджетов имеет смысл ставить SDK, в нем есть поддержка отчетов о JavaScript ошибках, лог, да и рабоать с эмулятором во время разработки удобнее. Для отладки виджетов можно использовать любой дебаггер JS, тот же FireBug (хотя логичнее использовать дебаггеры с поддержкой webkit), но нужно адаптировать скрипт если в нем есть специфичный для телефона код. Например, предварительно заменить такой код совместимым с классическими браузерами, или создать объекты которые будут эмулировать специфичные для телефона функции.

Пока что не все так радужно как кажется с первого взгляда. Ощущается некоторая «сырость» платформы, и несколько обидных мелочей, например невозможность работы в фоне (исключая пока еще неясные виджеты для главного экрана), ощутимая задержка между нажатием на элемент и реакцией виджета, глюки с отработкой некоторых JS-событий (onkeyup, onkeydown, onchange), проблемы с виртуальными клавиатурами. В то же время радует что платформа развивается и дорабатывается, появляются новые разделы в документации.

Ссылки на маны и примеры (английский)
Библиотека веб-разработчика nokia
Widgets на forum.nokia.com (Landing Pad)
Информация о виджетах на nokia wiki + примеры
Теги:
Хабы:
+35
Комментарии 21
Комментарии Комментарии 21

Публикации

Истории

Ближайшие события

Московский туристический хакатон
Дата 23 марта – 7 апреля
Место
Москва Онлайн
Геймтон «DatsEdenSpace» от DatsTeam
Дата 5 – 6 апреля
Время 17:00 – 20:00
Место
Онлайн