Средства для разработки приложений для платформ nokia
DESCRIPTION
Презентация в рамках: IT-конференция BarCamp Central Asia 2011. Дата проведения - 15-17 апреля 2011 года. Место проведения: КИМЭП, ул. Абая 4, АлматыTRANSCRIPT
Средства для разработки
приложений для платформ Nokia
Александр ТруфановSenior Technical ConsultantForum Nokia
[email protected] апрель, 2011
© 2011 Nokia
СервисыФреймворкиПлатформы
© 2011 Nokia
Новая экосистема Nokia + Microsoft
MeeGoSymbian Будущие инновации
Смартфоны Nokia
Телефоны Nokia Series 40
© 2011 Nokia
Возможности для разработчикаSeries 40
600 Миллионовустройств – целевая аудитория
1 МиллионВ день продавался в 2010
Symbian
225 Миллионовустройств – целевая аудитория
150 МиллионовПланируется продать
… и распространение через
© 2011 Nokia
Nokia унифицирует средста разработки
Web
Native
Java
© 2011 Nokia
Разработка на различных платформахТехнология Платформы ТрендыQt C++Symbian C++Maemo C/C++
Symbian, Maemo/MeegoSymbian, S60Maemo5, MeeGo
Фокус на Qt SDK как средстве разработки, Qt и Qt Quick как технологии
HTML, CSS, JavaScript, FlashLite based on Nokia WRT
Symbian Фокус на Nokia Web Tools как средстве разработки.
Java ME Series40Symbian
Улучшение производительности и UX, совместимость со стандартами
Native
Web
Java
© 2011 Nokia
Устройства и платформы
Телефоны(Series 40)
Смартфоны(Symbian)
Смартфоны(MeeGo)
Java приложения
Native приложения
Web приложения Web приложения
© 2011 Nokia
Series 40• Наиболее распространенная в мире
платформа для мобильных устройств
– Предоствляет возможность полноценной
работы с Internet и сервисами
– Наиболее эффективно использует ресурсы
– Легко настраивается для операторов
© 2011 Nokia
Java• Распространенное решение для кроссплатформенной разработки:
– Java Platform, Micro Edition
(Java ME, ранее J2ME)
– Небольшое подмножество Java SE (ПК) плюс
множество специфичных расширений (JSRs)
– 2.6 млрд. подерживающих Java устройств
– Также используется в Blu-Ray и Amazon Kindle 2
© 2011 Nokia
Touch & Type для Series 40
• Быстрые мобильный интернет и Wi-Fi: Quad-band GSM, quad-band WCDMA, HSPA и WLAN
• Сенсорный экран с поддержкой распознвания жестов
• Клавиатура для быстрого набора сообщений
• 5Mpix камера
Nokia C3 Touch and TypeNokia X3 Touch and Type
© 2011 Nokia
• Лучшее управление в ваших приложениях
• Создавайте приложения не уступающие приложениям для смартфонов
• Многочисленная целевая аудитория
© 2011 Nokia
Java приложения.
Разработка стала проще
Распознование Touch Gestures стандартизировано для всех
устройств
Новые классы Java API ввыдены для работы с Touch Gestures
Эмуляторы Touch UI и местоположения для ускорения разработки
…и это только начало. Nokia продолжит улучшать поддержку сенсорных интерфейсов в Java
© 2011 Nokia
Symbian• Разработана специально для мобильных устройств
– Низкие требования
• От 100 MHz до многоядерных процессоров
• E72: Работа без подзарядки до 24 дней!
(при активном использовании: 3 – 7 дней)
– Полная многозадачность
© 2011 Nokia
Java – поддерживается Symbian, но• Плюсы:
– JVM предустановлена на устройствах
– Разработка относительно проста и быстра
• Минусы:
– Ограниченные возможноси и производительность
– В среднесрочной перспективе проигрывает Qt
– Не поддерживается MeeGo\Windows Phone
© 2011 Nokia
Что такое Qt?• Qt (”кьют”) кроссплатформенный C++ фреймворк для разработки
приложений
– Набор кроссплатформенных API и кроссплатформенный GUI фреймворк
– Библиотека C++ классов
– Средства разработки
• Qt изначально проэктировался как эффективное средство разработки GUI
приложений для десктопных платформ
• Разработан норвежской компанией Trolltech, ставшей частью Nokia в 2008
• Последняя версия 4.7.3
© 2011 Nokia
Qt: бесплатная и коммерческая лицензииOpen Source
qt.gitorious.org
Qt может быть использован в коммерческих
продуктах с закрытым исходным кодом
Изменения в самом Qt
должны быть опубликованы
Тех поддержка включена
Бесплатная
(лицензия LGPL)Коммерческая лицензия
Доступна тех поддержка
© 2011 Nokia
Архитектура Qt• Qt имитирует родной стиль при отрисовке UI
– Элементы UI передают оригинальный
look & feel
– Может быть адоптирован разработчиком
• Построе на низкоуровневых API платформы
– Не runtime!
• Кроссплатформенный
– Один код для всех платформ
– Требуется лишь перекомпиляция
© 2011 Nokia
Платформы Windows
Mac OS
Linux / X11
Embedded Linux
Windows CE
Maemo / MeeGo
Symbian (S60)
C++
Java
Python
Ada
Pascal
Perl
PHP
Развивается силами Qt open source сообщества.
Официально не поддерживается Qt Development Frameworks.
© 2011 Nokia
Symbian и Qt• Qt для Symbian:
– Qt 4.6: Поддержка с S60 3rd. Edition, FP1+ (напр., Nokia N95, E71)
– Qt 4.7.x: Поддержка с S60 5th Edition (сенсорные устройства)
– Установите SDK для вашего устройства, или самое младшее SDK для
устройств, поддержку которых вы желаете обеспечить.
Поддержка Qt Предустановлен
Series 60
1.0
Series 60
2.0
(+ 3 FPs)
S60
3.0
S60
3.1
S60
3.2
S60 5.0
=
Symbian^1
Symbian^2 Symbian^3
=
Symbian platform …
© 2011 Nokia
Smart Installer• Распространение Qt приложений
для Symbian устройств:
– Qt не на всех устройствах
Решение: инсталляция / апгрейд
по мере необходимости
– Упаковка Smart Installer в дистрибутив
© 2011 Nokia
Qt Mobility• Qt: Desktop → Mobile
• Потребовались новые API для
– Работы с сенсорами
– Определения местоположения
– Отправки сообщений
– И т.д.
• Qt Mobility: новый кроссплатформенные API для моб. служб
– Реализованы на всех платформах, где это имеет смысл
© 2011 Nokia
Начало разработки на Qt для Symbian• Скачать Nokia Qt SDK 1.0.2 или Qt SDK 1.1 RC для Win, Nix или Mac
– Средства разработки
• IDE Qt Creator + Remote Compiler
• Qt Linguist
– Библиотеки (v4.6.2/4.7.x)
• Qt for Windows
• Qt for Symbian + дистрибутивы для устройств (qt и TRK)
• MADDE для MAEMO 5
– Qt Mobility (+ sis файлы)
– Симулятор
– Отладка на устройстве
© 2011 Nokia
Qt SDK – симулятор• Симуляция состояния батареи и питания
• Информация об устройстве и
настройка его локализации
• Съемные носители (MMC)
• Информация о сети
• Местоположение
• Импорт контактной книги
• Сообщения (email, SMS)
• Сенсоры (акселерометр, компас)
• Поддержка скриптов
© 2011 Nokia
Qt Quick (Qt User Interface Creation Kit)• Создавайте UI как дизайнер
– Без знания C++
– Визуальные инструменты
– Язык QML (расширение JavaScript)
– Модуль: Declarative UI
– Поддержка SVG, XHR, HTML5 Web DB
© 2011 Nokia
Photoshop to QML exporter
© 2011 Nokia
Кроссплатформенность Qt Quick
Windows 7
Symbian^3 Simulator
Maemo / MeeGo
© 2011 Nokia
QML – мета-объектный язык Qt
© 2011 Nokia
Qt Quick Components
http://labs.qt.nokia.com/2011/04/08/qt-quick-
components-for-symbian-technology-preview/
Technical Preview для Symbian:
© 2011 Nokia
Web Apps
Ядро: WebKit (посл. версия,
поддержка HTML 5)
Среда разработки: Qt SDK
Ядро: WebKit (более старая версия,
такая же как в браузере устройства)
Среда разработки :
Aptana Studio / Nokia Web SDK
Nokia Web Runtime (WRT)
Qt 4.7 + встроенный WebKit браузер
Оба поддерживают:
- Хранение контента на
устройстве (HTML,
CSS, JavaScript,
изображения)
- Иконка в меню
- Доступ к функциям
устройства
© 2011 Nokia
Интернет эволюция
Виджетыоптимизированные клиенты для web-
инфомации и служб
Оптимизированные для мобильных устройств сайты
Полнофункциональный HTML браузер позволил
пользователям полноценно работать в
Web
Втджеты + Platform Services позволяют
интегрировать Web и персональный
контекст
© 2011 Nokia
Что такое Виджеты?• Web-сайты часто не подходят
для отображения на маленьком экране
• Виджеты – “локальные web-сайты”
на устройстве
– Рендерятся при помощи браузера
– Получают данные при помощи
AJAX (Web 2.0)
– Выглядят как обычные приложения
– Но: просты в разработке
т.к. используют HTML & JavaScript
© 2011 Nokia
HOMESCREEN!
© 2011 Nokia
Виджеты и Platform Services• Platform Services
– Фреймворк для абстрагированного доступа
к различным сервисам
– Доступ через JavaScript
• Примеры использования:
– Объединение Web-данных с локальной информацией
для предоставления релевантных, персонализированных сервисов
– Сохранение важных контактов и событий в устройстве
© 2011 Nokia
APIBridge• Механизм, позволяющий расширить возможности Java, WRT и Flash Lite
приложений
• На данный момент имеет следующие плагины:
• Загрузка файлов на сервер.
• Запись видео, аудио и фотографирование.
• Чтение файлов.
• Масштабирование изображений.
• Создание preview изображений.
• Использование службы ведения логов.
• Использование служб определения
местоположения
• Использование служб управления медиа.
• Отправка DTMF сигналов.
© 2011 Nokia
Шаблон On-demand WebTV• Онлайн видео-вещание
(требуется RSS с описаниями
и ссылками на видео)
– Бесплатен
– HTTP progressive и RTMP
– Flash video (FLV/F4V)
или MP4
– H.264, On2 VP6
– 640 x 360 и больше, 16:9
– 3G или WiFi
– Только для Symbian^3
– Возможен downgrade на S60 5th ed.
© 2011 Nokia
MeeGo• OS на базе Linux
– Open Source платформа для Internet Tablets и Maemo Mobile
Computers
• 90% кода Open Source!
– Настраиваемый многоэкранный рабочий стол
– Многозадачность и панель задач
– Поддержка ускорения графики OpenGL ES 2.0
© 2011 Nokia
Использование MeeGo
Netbook
Connected TV
Handset
Media PhoneIn-Vehicle
© 2011 Nokia
Спасибо4/18/2011 42