- PVSM.RU - https://www.pvsm.ru -
Снова здравствуйте, читатели!
В предыдущей статье мы сделали обзор web-части Tizen SDK. Сегодня мы сделаем обзор нативной части для тех, кому необходима максимальная производительность и полный доступ к функционалу устройства в своих приложениях.
Всех заинтересованных приглашаем под кат.
В предыдущей статье [1] мы уже вкратце рассказали, что такое Tizen, с чем его едят и какая у него специфика. Мы узнали, что Tizen — это открытая операционная система на базе Linux, которая предназначена для широкого круга устройств, таких как смартфоны, планшетные компьютеры, автомобильные информационно-развлекательные системы, ультрабуки, «умные» телевизоры, цифровые камеры, офисная, бытовая и медицинская техника и прочая носимая электроника. Мы смотрели на него глазами web-разработчика. Сегодня, мы взглянем на Tizen SDK с другой, нативной стороны.
Вспоминаем из прошлой статьи, что самый нижний слой архитектуры представляет из себя ядро Linux (для Tizen SDK 2.2 версия 3.4+) с драйверами устройств.
Чуть выше располагаются другие подсистемы ядра:
Можно сделать вывод, что среди функционала есть практически всё, что может понадобиться для разработки самых разных приложений.
Верхний слой представляется из себя пользовательские приложения, которые, напомним, в Tizen бывают трёх типов: web, нативные и гибридные.
Доступ к перечисленным выше подсистемам из приложений осуществляется посредством двух фреймворков: Web Framework и Native Framework. Как и договаривались, сегодня мы остановимся на последнем.
В Tizen Native Framework всё необходимое для доступа к функциональности описанных ваше компонент ядра скомпоновано в лаконичную структуру из 19 пространств имён:
App | Media | Telephony |
Base | Messaging | Text |
Content | Net | Ui |
Graphics | Security | Uix |
Io | Shell | Web |
Locales | Social | |
Locations | System |
О назначении каждого из пространств имён можно догадаться по названию: это управление жизненным циклом приложения, работа с основными типами данных, управление контентом, работа с 2D- и 3D-примитивами, текстом, изображениями, файлами, базами данных, реестрами, гопозиционирование, работа с аудио и видео, сообщениями различного типа, сетевое взаимодействие, криптография, управление доступом и работа с сертификатами, управление внешним интерфейсом устройства, управление встроенными аппаратными возможностями, телефония, управление графическим интерфейсом как на стандартном, так и на продвинутом уровнях, работа с сенсорами, работа с web – иными словами, абсолютно полный неограниченный доступ к функционалу Tizen.
При разработке нативных приложений с помощью Tizen Native Framework, необходимо помнить следующее:
Нативные приложения в Tizen разделяются на 2 типа: UI-приложения и сервисные приложения. И те, и другие обладают неограниченным доступом к функционалу устройства с максимальной производительностью. Жизненный цикл UI-приложений несколько отличается от жизненного цикла сервисных приложений.
В комплект Tizen SDK также таже входит множество примеров приложений, разработанных с помощью Tizen Native Framework. Опираясь на эти примеры, вы можете с лёгкостью приступить к разработке своего приложения.
А теперь, как и обещали, мы познакомим вас с инструментарием, который предлагает Tizen SDK.
Интегрированная среда разработки, входящая в состав Tizen SDK, основана на Eclipse с набором необходимых дополнений и адаптаций для разработки приложений для Tizen. Перспективы Tizen Web и Tizen Native несколько отличаются. Ниже показан скриншот Tizen IDE с перспективой Tizen Native.
Интерфейс IDE интуитивно понятен и содержит всё необходимое для разработки, отладки, тестирования и профилирования приложений. Здесь также доступен Event Injector, с помощью которого можно эмулировать различные события, позволяя, таким образом, при разработке обойтись эмулятором.
Для нативной разработки Tizen IDE предлагает следующие инструменты/помощники:
В составе Tizen SDK есть ещё один очень полезный инструмент для разработчика нативных приложений. Это Dynamic Analyzer. Он позволяет анализировать поведение вашего приложения в реальном времени, записывая изменения всех параметров в единый отчёт. Посмотреть, сколько памяти затрачивает приложение, насколько загружает процессор, как обращается к файловой системе и многое-многое другое позволяет Dynamic Analyzer.
Следующий инструмент — это Native UI Builder. Как вы уже догадались, это WYSIWYG-редактор пользовательского интерфейса. Не больше и не меньше.
Если вам наскучил стандартный пользовательский интерфейс и душа требует сложных графических эффектов, вам понравится инструмент UI Effect Builder. Он позволяет моделировать интерактивные эффекты на основе физических законов и анимации. К сожалению, формат статьи не позволит передать то, как всё это выглядит. Но результат очень легко посмотреть, если собрать и запустить приложение EffectsApp, которое входит в состав примеров из Tizen SDK.
И последний инструмент из состава Tizen SDK, который, без сомнения, будет полезен разработчикам нативных приложений, — это Tizen Emulator. Эмулятор представляет из себя виртуальную машину, основанную на QEMU. Он позволяет в «условиях, приближённых к боевым» испытать ваше приложение.
И конечно же, никуда без командной строки для тех, кто без неё по каким-либо причинам не может.
native-gen | Генерирует новый проект. |
native-make | Собирает проект. |
native-packaging | Упаковывает проект. |
native-install | Устанавливает приложение на устройство (или эмулятор). |
native-uninstall | Удаляет приложение с устройства (или эмулятора). |
native-run | Запускает приложение на устройстве (или эмуляторе). |
native-debug | Запускает отладку приложения на устройстве (или эмуляторе). |
На этом мы ставим точку в нашем развернутом обзоре. Разве что, осталось упомянуть достаточно подробную документацию, которая также входит в состав Tizen SDK.
Как вы сами убедились, в Tizen SDK есть всё для быстрого старта полноценной разработки нативных приложений для Tizen, к которому вы теперь полностью готовы, а если успели прочитать наш обзор web-части [1], то ещё и web- и гибридных приложений. Непосредственно о разработке приложений для Tizen мы надеемся рассказать вам в следующих статьях.
Более детальное описание инструментов Tizen SDK можно найти ЗДЕСЬ [3]. Техническую поддержку и ответы на вопросы мы осуществляем здесь: dev.cis@samsung.com
Всего наилучшего и до встречи в следующих статьях!
Tizen Eva Group
Автор: samsung_ru
Источник [4]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/mobile-development/42867
Ссылки в тексте:
[1] предыдущей статье: http://habrahabr.ru/company/samsung/blog/192780/
[2] RAII (Resource Acquisition Is Initialization, получение ресурсов есть инициализация): https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%80%D0%B5%D1%81%D1%83%D1%80%D1%81%D0%B0_%D0%B5%D1%81%D1%82%D1%8C_%D0%B8%D0%BD%D0%B8%D1%86%D0%B8%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F
[3] ЗДЕСЬ: https://developer.tizen.org/help/index.jsp
[4] Источник: http://habrahabr.ru/post/192816/
Нажмите здесь для печати.