Увидел свет второй стабильный релиз мобильной платформы Tizen, которая продолжает развитие систем MeeGo и LiMO, но отличается использованием Web API и web-технологий (HTML5/JavaScript/CSS) для создания мобильных приложений. Одновременно для разработчиков мобильных приложений выпущен пакет Tizen SDK 2, в состав которого входит среда разработки на базе Eclipse, эмулятор телефона на основе QEMU, документация на Web API и компоненты для сборки программ. Платформа Tizen развивается под покровительством организации Linux Foundation, при участии LiMo Foundation, Intel и Samsung.
Релиз доступен только в исходных текстах, на основе которых можно самостоятельно подготовить сборки для смартфонов и планшетных ПК. Для упрощения формирования сборок поддерживается репозиторий готовых пакетов, а также эталонная сборка для запуска в эмуляторе.
Разработчикам мобильных приложений предоставлена возможность используя технологии HTML5 создавать кроссплатформенные приложения, одинаково хорошо работающие на широком спектре устройств (смартфоны, планшеты, ПК, нетбуки, телевизоры, автомобильные информационно-развлекательные системы), не требуя сборки отдельной версии для каждой аппаратной и программной платформы. Web API платформы Tizen формируется с использованием как уже известных web-стандартов и HTML5-технологий, так и расширенных интерфейсов для управления устройством. В рамках Web API разработчикам предоставлены средства для создания полноценных мобильных приложений, сравнимых по функциональности с программами для других мобильных платформ. Для создания игр и графических приложений предлагается использовать WebGL. Запуск приложений, написанных на низкоуровневых языках программирования, таких как Си и Си++, обеспечен при помощи Native Framework.
Из ключевых улучшений, добавленных после выхода Tizen 1.0:
- Предоставление фреймворка для обеспечения работы полноценных нативных приложений, имеющих полный доступ к низкоуровневым операциям, недоступным программам на HTML5. Например, можно организовать запуск приложений в фоне, прямое сетевое взаимодействия и создание таких сложных систем, как синтез речи;
- Улучшенный web-фреймворк, обеспечивающий более полную поддержку HTML5/W3C API и специфичных для различных типов устройств Tizen API. Из добавленных возможностей HTML5 отмечаются средства для работы видео субтитрами, API для оценки статуса заряда аккумулятора, API для управления ориентацией экрана, и т.п. Новые элементы Tizen API включают в себя API для обеспечения передачи файлов, отправки уведомлений, контроля энергопотребления, доступу к истории звонков и подсистеме текстовых сообщений. Tizen Device API теперь поддерживает Bluetooth и NFC;
- Улучшенный web-фреймворк для создания интерфейса пользователя, поддерживающий в том числе создание полноэкранных и многооконных приложений;
- Web-движок платформы переведён на использование Webkit2 и теперь поддерживает многопроцессную модель выполнения web-приложений, обеспечивающую более надёжную изоляцию приложений и более высокую надёжность работы системы. В Web Runtime добавлены дополнительные опции настройки, позволяющие активировать дополнительные возможности, гибко управлять привилегиями и формировать окружение для запуска NPRuntime плагинов;
- Дополнительный набор базовых нативных эталонных приложений (ранее предлагались web-приложения), включая календарь, адресную книгу, менеджер фотографий, конфигуратор, интерфейс к средствам телефонии и видеопроигрыватель;
- Улучшенная web-ориентированная среда разработки Web IDE с поддержкой проектирования интерфейса в режиме WYSIWYG, системой инспектирования JavaScript на основе браузера Chrome и интерфейсов для просмотра лога выполнения JavaScript;
- Среда для разработки нативных программ Native IDE, предоставляющая средства визуального проектирования интерфейса, систему unit-тестирования и динамический анализатор кода.
- В SDK добавлен менеджер установки приложений, в том числе поддерживающий установку по сети. Улучшена поддержка OpenGL ES;
- Новый Platform SDK для упрощения адаптации и создания сборок Tizen для новых аппаратных платформ.
Из базовых сервисов (Core Service) и компонентов платформы можно отметить:
- Графический стек и пользовательский интерфейс. В состав входит набор библиотек EFL (Enlightenment Foundation Libraries), основанная на X11 система управления окнами, модули для поддержки OpenGL ES и различных методов ввода, в том числе мультитач. Интерфейс и графические эффекты формируется при помощи библиотек EFL, включая библиотеку рендеринга Evas и систему виджетов Еlementary. Среди компонентов графического стека: DRI2 и libdrm, композитный оконный менеджер на базе EFL, OpenGL ES 1.1/2.0, EGL 1.4, бэкенды для программного вывода (X11) и акселерированного вывода (OpenGL ES), 3D- и 2D-стеки, в том числе поддержка векторной графики через библиотеку Cairo;
- Фреймворк для управления приложениями, в том числе для запуска приложений по имени пакета, URL или MIME-типу, управления пакетами, а также инициирования выполнения системных сервисов, таких как приложение для приёма звонков, вывода уведомлений, изменения ориентации экрана и т.п. Во фреймворке задействованы такие открытые компоненты, как Appcore, DBus, GNU gettext, libICU;
- Базовые сервисы - набор стандартных системных библиотек, обеспечивающих выполнение таких операций как доступ к БД, интернационализация и обработка XML;
- Сетевые сервисы - функциональность, необходимая для создания сетевых соединений и обеспечения работы сети. Обеспечена поддержка 3G, Wi-Fi, Bluetooth, HTTP и NFC (Near Field Communication). Для настройки 3G и Wi-Fi соединений используется конфигуратор ConnMan (Connection Manager). Для работы с Bluetooth используется пакет bluez;
- Сервисы для определения местоположения, основанные на фреймворке GeoClue. Поддерживается как определение местоположения через GPS, так и с использованием WPS (Wi-Fi Positioning System), Cell ID и различных дополнительных сенсоров;
- Сервисы для отправки и приёма сообщений (SMS, MMS, Email и IM);
- Мультимедиа подсистема на базе GStreamer, обеспечивающая управление различными видами контента, включая видео, звук, изображения и VoIP. Платформа поддерживает большой объём мультимедиа форматов и кодеков, благодаря задействованию компонентов FFmpeg. Среди поддерживаемых функций отмечаются средства для работы с камерой, приложения для записи звука и видео, мультимедиа проигрыватель;
- PIM (Personal Information Management) - система управления персональной информацией и сохраняемыми на устройстве данными пользователя. Включает средства для работы с адресной книгой, календарём-планировщиком, списком задач и привязанными к устройству данными (например, местоположение и статус соединения). Поддерживаются спецификации vCard 3.0 и vCalendar 1.0;
- Система обеспечения безопасности и контроля доступа, а также управления сертификатами и организации безопасной доставки приложений. Шифрование и поддержка SSL/TLS реализованы при помощи OpenSSL;
- Системные сервисы и средства для управления аппаратным обеспечением. В том числе, интерфейсы для доступа к различным типам устройств (сенсоры, экран и т.п.), управления питанием, обработкой событий (USB, MMC, подключение зарядного устройства или наушников), проведения обновления системы;
- Стек телефонии для обеспечения работы в сетях сотовой связи (UMTS и CDMA) и управления SIM-картой;
- Web-стек на базе браузерного движка WebKit (webkit-efl) с реализацией Tizen Web API. Сервис Web UI основан на библиотеке JQuery Mobile.