Ubuntu ui toolkit на Ubuntu Touch и Android



    Хотелось бы рассказать об опыте запуска приложения написанного с использованием Ubuntu ui toolkit на платформах Ubuntu Touch и Android. Для теста я использовал приложение из прошлой статьи. Тулкит находиться в стадии разработки, для интересующихся текущим состоянием информация под катом.

    Ubuntu Touch


    Установка Ubuntu Touch на устройство описана на сайте. Официальные сборки существуют для устройств серии Nexus, но в сети множество вариантов и для других устройств.
    Компиляцию и сборку значительно проще выполнять через Qt Creator поставляемый с набором Ubuntu SDK.
    1. После подключения устройства во вкладке Devices будет доступно включение режима разработчика. Это действие установит необходимые пакеты (gcc, ssh). Не забываем про разрешения в udev и наличие интернета
    2. В зависимости от типа проекта в меню Build >> Ubuntu Touch будут доступны опции для запуска приложения(.qmlproject), либо для компиляции, сборки и установке пакета на устройстве(.pro)

    Несколько скриншотов с Galaxy Nexus:






    Как всегда есть некоторые проблем, например приложение запускается в фоне и необходимы некоторые действия чтобы увидеть его. Но в целом все работает хорошо и Ubuntu Touch радует своими возможностями по разработке приложений.

    Android


    Здесь путь значительно дольше и более тернист.

    Qt5

    Для начала нам потребуется собрать из исходных кодов Qt5 с помощью Android NDK. Подробно процесс сборки описан в статье.
    На Ubuntu 13.10 мне потребовалось перед сборкой установить пакеты openjdk-6-jdk и zlib1g-dev, сделать export ANDROID_API_VERSION=android-14. Параметры для скрипта конфигурации:
    ./configure -opensource -confirm-license -developer-build -xplatform android-g++ -nomake tests -nomake examples -android-ndk /opt/android-ndk-r8e -android-sdk -android-sdk /opt/adt-bundle-linux-x86_64-20130219/sdk -skip qttools -skip qttranslations -skip qtwebkit -skip qtserialport -skip qtwebkit-examples-and-demos
    После этого сборка прошла успешно. При сборке были отключены модули qtwebkit и qttranslations их работоспособность обещают к релизу версии Qt 5.1.

    Неудачный запуск

    Открыв проект нашего приложения и добавив Kit для Android (в Tools >> Options >> Build & Run, затем во вкладке Projects >> Add kit) можно попробовать запустить программу на устройстве. Если все прошло хорошо, на экране появится предложение предложение установить Ministro. Этот сервис устанавливает и предоставляет библиотеки qt для приложений. После скачивания библиотек мы увидим серый фон и сообщения от отсутствии модуля Ubuntu в логе.

    Скриншоты процесса









    Ubuntu ui toolkit

    Получить код можно из репозитория, сразу архивом или через bazaar. Код собирается Qt Creator`ом, с использованием Qt5 под Android. Так-же во время сборки будет необходимо закомментировать код использующий функции отключенных модулей, в основном, это qttranslations.

    «Удачный запуск»

    Копируем Ubuntu ui toolkit на устройство. Ministro использует папку /data/local/tmp/qt/, туда я скопировал themes и modules из Ubuntu ui toolkit. Так-же необходимы две переменные окружения UITK_THEME_PATH (путь к папке themes) и GRID_UNIT_PX (коэффициент для перевода gp в экранные пиксели).
    qputenv("UITK_THEME_PATH", "/data/local/tmp/qt/themes");
    qputenv("GRID_UNIT_PX", "25");

    Разочарованием стала неработоспособность модуля qtwebkit, из-за этого невозможно провести авторизацию пользователя. Скриншот результата.


    CurrencyConverter для сглаживания впечатления







    Blackberry 10


    Есть статья по поводу запуска приложений использующих Ubuntu ui toolkit на BB10. Все выглядит работоспособно, хотя и требуется некоторая адаптация.
    Метки:
    Поделиться публикацией
    Похожие публикации
    Реклама помогает поддерживать и развивать наши сервисы

    Подробнее
    Реклама
    Комментарии 0

    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.