Qt 5 для Android: превью

в 7:24, , рубрики: android, necessitas, QML, qt, Qt 4, Qt 5, qt quick, Qt Software, портирование, разработка, Разработка под android

Qt 5 для Android: превью

Первый коммит “Android mkspecs and semaphore” в стремлении портировать Qt 4 на Android был совершен на Рождество 2009 года румынским разработчиком BogDan Vatra.

22 января 2010 года он закоммитил “A small step for Qt, a giant leap for android” с работающим плагином графической системы и возможностью запуска приложений на реальных Android-устройствах. Чтобы отпраздновать это событие, он выложил видео с демонстрацией работы.

20 февраля 2011 года он объявил о первом пригодном для разработки релизе Qt 4 для Android под названием Necessitas.

В течение последних 4 лет BogDan, при поддержке таких же, как он, энтузиастов, продолжает разрабатывать Necessitas в свободное от работы время.

8 ноября прошлого года BogDan согласился с добавлением результата его трудов в Qt 5 и передачей порта в Qt Project.

4 января он отправил первую версию Qt 5 для Android в WIP-бранч (Work In Progress), а недавно мы интегрировали её в «dev» бранч, что означает, что этот проект станет частью версии Qt 5.1, когда она будет выпущена.

В этой предварительной версии мы сфокусировались на опыте разработчиков, чтобы вы могли легко запускать и тестировать свои приложения на Android-устройствах. И хотя ничто не мешает вам распространять приложения с Qt 5.1 через app store, мы рекомендуем не делать этого и дождаться релиза Qt 5.2, потому что мы хотим улучшить поддержку ещё больше: внести дополнительные возможности для развёртывания приложений, добавить изысканности в целом, улучшить поддержку Android API, позволив расширить ваше приложение Java-кодом или сопоставленным ему C++ API.

Для начала, вот видео с приложением Qt 5 Cinematic Experience, запущенным на (слева направо): Nexus 4, Asus Transformer Pad TF300T и Nexus 7. Это приложение стало нашим любимым для представления на различных мероприятиях, так как отлично демонстрирует новые графические возможности Qt Quick 2: шейдерные эффекты, системы частиц, новые PathAnimation, а также низкоуровневое аппаратное ускорение SceneGraph, что позволяет всему этому работать с частотой обновления 60 кадров в секунду.

В дополнение к основной части Qt, мы также подерживаем QML Media Player API в QtMultimedia. Вот хороший видеоплеер, написанный Andy на QML, с фрагментным шейдером поверх видео. Приложение запущено на Asus Transformer TF300:

Демонстрации мультитача: простой пример рисования рукой, запущенный на Nexus 4. Здесь также показана поддержка нативных меню:

Низшей поддерживаемой версией Android API является API уровня 10, который соотвествует версии Android 2.3.3. Это означает, что Qt-приложения могут работать на бюджетных устройствах, таких, как этот Huawei Y10:

Обзор того, что мы уже имеем:

  • Поддержка создания Qt Widgets и Qt Quick приложений, которые работают на устройствах под управлением Android.
  • Поддержка Android API уровня 10 (версия 2.3.3) и выше.
  • Поддержка QML медиа-плеерной функциональности в QtMultimedia.
  • Множество наиболее часто используемых датчиков в QtSensors.
  • Конечно же, кроссплатформенные возможности Qt (в том числе Qt Quick controls и QtGraphicalEffects).
  • Разработка и настройка приложений в Qt Creator 2.7.
  • Развёртывание тестовых сборок на устройство непосредственно из Qt Creator.

Кроме того, в ближайшее время мы планируем реализовать поддержку распространения библиотек Qt через Ministro, что позволит использовать один и тот же набор библиотек Qt в разных приложениях на одном устройстве; это будет основным способом развёртывания приложений Qt 5.1. Текущий статус поддержки вы всегда можете посмотреть на нашей вики. Дайте нам знать, если что-то пойдёт не так. Обычно нас можно найти на канале #necessitas Freenode IRC.

Вы спросите, что дальше? На самом деле, вы можете помочь нам решить это, сообщая о багах и предлагая новые функции, а также внося свой код. Мы постоянно работаем над улучшением Qt 5 для Android и из ваших отзывов можно извлечь много пользы. В вики мы собираем список проверенных устройств. Мы будем признательны, если вы уделите время и добавите в список протестированные вами устройства (а также укажете любые неполадки, найденные вами).

И наконец: большое спасибо BogDan Vatra, Ray Donnelly и всем остальным, кто внёс свой вклад в проект Necessitas за последние годы и в проект Qt 5 для Android в последние месяцы. И спасибо всем, кто сделает вклад в будущем.

Автор: epicfailguy93

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js