Pull to refresh

Разработка для PlayBook с Native SDK

Reading time 5 min
Views 3.4K
Хотел поделиться своим личным видением ситуации с разработкой для BlackBerry PlayBook и немного рассказать о своём опыте использования Native SDK. Так сложилось, что я уже несколько лет работаю с ОСРВ QNX, которая стала основой для операционной системы PlayBook — BlackBerry Tablet OS. Сразу скажу, что сама платформа PlayBook, как и QNX, мне нравится. Однако, не буду никого агитировать за или против, а просто расскажу, что и как.

Наверное, стоит начать с того, что сейчас существуют две версии BlackBerry Tablet OS: текущая 1.0.x и бета-версия 2.0.0.x. Мне удалось поработать с двумя версиями. Вторая версия сейчас доступна для тестирования и должна выйти в середине февраля следующего года. Она будет включать много приятных изменений. Помимо прочего заявлена поддержка приложений Android. Есть, конечно, ряд ограничений, но авторы большинства приложений могут с лёгкостью перепаковать свои приложения для работы на PlayBook. Считаю, что это достаточно «вкусная» возможность. Приложения, разработанные для первой версии (в том числе и при помощи NDK), замечательно работают во второй.

Помимо уже существующих двух версий операционной системы для PlayBook, в следующем году ожидается выход платформы BBX. Платформа BBX также основана на QNX и будет использоваться при разработке не только планшетов, но и всех новых смартфонов BlackBerry. Очень похоже, что PlayBook представляет собой ступеньку от BlackBerry OS к BBX. Но это будет в следующем году, а пока рассмотрим то, что есть уже сейчас.

Для BlackBerry Tablet OS версий 1 и 2 доступны различные средства разработки. Во-первых, это WebWorks, который позволяет разрабатывать приложения с использованием технологий HTML5. Во-вторых, это Adobe AIR, который позволяет разрабатывать приложения на Flash. Ну и, конечно, самое интересное и близкое для меня средство разработки — Native SDK (NDK). Почему мне нравится именно NDK? Скорее всего потому, что в качестве IDE используется знакомый Momentics (построенный на Eclipse), а ещё больше потому, что NDK позволяет «увидеть» QNX в планшете. Ну и, пожалуй, самое очевидное — наибольшая гибкость и функциональность присутствует именно в NDK. Например, с помощью Native SDK можно писать расширения для Adobe AIR.

Все средства разработки для PlayBook обладают своими отличительными особенностями и, как я думаю, появились не просто так. Помимо очевидного назначения каждого SDK (которым я считаю привлечение разработчиков знакомых с той или иной технологией), они позволяют решить и другие задачи. Пожалуй, стоит рассказать об этом чуть подробнее.

WebWorks представляет собой некий мостик от BlackBerry OS (это то, что сейчас работает на смартфонах) к BBX, поскольку позволяет вести разработку как для смартфонов, так и для планшета. Для смартфонов BlackBerry существуют средства разработки на основе Java, но на PlayBook'е их нет. Так что WebWorks является единственным общим средством разработки для платформ BlackBerry.

Средства переноса Android приложений. На мой взгляд это правильно сделанный ход. Одним из недостатков PlayBook называют небольшое количество приложений. Это правда, в сравнении с магазинами приложений для iOS и Android для BlackBerry PlayBook приложений заметно меньше. Это и понятно, ведь платформа PlayBook появилась позже и всё ещё развивается. С другой стороны, кому нужны сотни тысяч приложений, четыре пятых из которых представляют собой откровенную ерунду? Похоже, что не все это понимают. Может быть не у всех, кто высказывает этот аргумент, есть планшет? Но не суть. Главное, что с инструментами переноса Android приложений можно ожидать появления на PlayBook большого количества приложений с платформы Android.

Нативные средства разработки (NDK) позволят привлечь разработчиков, знакомых с различными платформами. С выходом NDK был открыт репозиторий на Github'е с различными проектами. Очень интересны Cocos2D и Qt для BlackBerry. О возможностях NDK говорит ряд портированных проектов с открытым исходным кодом, таких как, например, Open Transport Tycoon Deluxe, Battle for Wesnoth и DosBox. Похоже, что часть разработчиков для платформы Nokia перейдёт на BlackBerry, раз сама Nokia взяла ориентир на Windows Mobile. Удачный опыт разработки Qt/QML приложений для PlayBook есть и у нас (об этом дальше). На основании своих исследований мы подготовили руководство по сборке Qt приложений для PlayBook.

Исследование возможностей платформы PlayBook привело к тому, что мы опубликовали несколько приложений в App World (это магазин приложений для BlackBerry). О наиболее интересном приложении я уже писал на Хабре — «Тайны океана». Самая популярная игра из этой серии «Ну, погоди!», которую мы тоже собираемся реализовать на PlayBook. Приложение «Тайны океана» разработано на AIR и позволяет нам с уверенностью заявить, что PlayBook отлично поддерживает эту технологию. К сожалению, не все задачи можно решить на Adobe AIR, хоть это одно из лучших средств для разработки ЧМИ. Поэтому мы стали разбираться с Native SDK, как только он стал доступен.

Тайны океана

Следующим шагом стала разработка приложения для определения региона по его номеру на автомобильном знаке.

Определение региона по его номеру на автомобильном знаке

Это приложение уже полностью разработано на NDK, а если быть точнее, то на QML. Информация и изображения взяты из Википедии. Само приложение не является чем-то сложным или уникальным, но позволило нам убедиться, что Qt и QML могут успешно использоваться при разработке для платформы PlayBook. Это не могло нас не обрадовать, и, как результат, мы выпустили второе приложение на QML.

Ханойская башня — популярная головоломка XIX века. Наверняка вы знакомы с этой игрой, в которой надо переложить кольца, составляющие пирамидку, с одного стержня на другой. Игра позволит скоротать время или научить детей логическому мышлению.

Ханойская башня

В этом приложении применялись некоторые эффекты типа масштабирования и вращения, а также анимация. PlayBook показал себя с лучшей стороны и всё двигалось не хуже чем на ноутбуке с Linux. Все перечисленные приложения бесплатно доступны в App World.

Кстати, стоит рассказать и о средствах разработки, которые я использовал для QML приложений. Мне кажется, что это тоже может быть интересно. В качестве инструментальной машины выступал мой рабочий ноутбук с ArchLinux и KDE4, вместо IDE был выбран текстовый редактор Kate, у которого вполне сносная подсветка синтаксиса QML и есть автодополнение. И, что самое удобное при разработке QML приложений, не требуется каждый раз запускать его на устройстве, достаточно использовать qmlviewer под Linux. Очень удобно.

Пожалуй, пора сделать вывод. Платформа PlayBook готова для разработки приложений под неё. Особенно сильный импульс этому придали выход Native SDK и публикация проектов с открытым исходным кодом на Github. Но дальше платформа будет становиться только лучше — ожидается официальный релиз Tablet OS 2.0 в феврале и выход платформы BBX весной или летом. RIM серьёзно относится к рынку планшетов и будет расширять на нём своё присутствие. Об этом говорит и ожидаемый в ближайшее время PlayBook 4G, и предположительный выход следующей осенью десятидюймовой версии PlayBook с рабочим названием Black Forest.
Tags:
Hubs:
+19
Comments 10
Comments Comments 10

Articles