LINUX.ORG.RU

Официальный анонс Qt 5.1 для Android

 , ,


0

3

Вольный перевод новости от Digia.

Первый коммит на нелёгком пути к Qt на Android был сделан в католическое Рождество в 2009-м году: «Android mkspecs and semaphore», автор BogDan Vatra.

22 января 2010-го он закоммитил «A small step for Qt, a giant leap for Android» с работоспособным плагином для графической подсистемы и смог по-настоящему запустить Qt-приложения на устройстве с Android. Тогда же он загрузил видео в честь знаменательного события.

20 февраля 2011 был анонсирован первый пригодный к использованию выпуск Qt 4 для Android под именем Necessitas.

Спустя три с лишним года BogDan и другие продолжают разрабатывать Necessitas в свободное время, а 8 ноября 2012 года BogDan согласился передать свои труды проекту Qt Project и новой версии фреймворка — Qt 5.

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

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

Посмотрим на демонстрацию!

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

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

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

Минимальный API, поддерживаемый в Qt 5 — 10, которому соответствует Android 2.3.3 («Gingerbread»). Это означает, что приложения также могут запускаться на бюджетных устройствах со старой версией Android, таких как Huawei Y100.

Обзор достигнутого:

  • поддержка создания приложений на основе Qt Widgets и Qt Quick, способных запуститься на устройствах с Android;
  • поддержка Android API 10 (Android 2.3.3) и выше;
  • программный интерфейс QML для медиаплеера, использующий Qt Multimedia;
  • набор наиболее часто используемых сенсоров в QtSensors;
  • разумеется, кроссплатформенность от Qt (включающая контролы Qt Quick и Qt Graphical Effects);
  • разработка и настройка свойств приложений в Qt Creator 2.7;
  • развёртывание тестовой сборки на устройстве прямо из Qt Creator.

В дополнение к достигнутому, в скором времени планируется добавить возможность распространения библиотек Qt с помощью сервиса Ministro, который позволит использовать один набор библиотек Qt на устройстве одновременно несколькими приложениями. Ministro станет основным способом распространения приложений в Qt 5.1. Кстати, способ уже доступен: инструкцию к нему читайте на wiki. Если что-то пойдёт совсем неправильно — нас можно найти на канале #necessitas во freenode.

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

В завершение, огромное спасибо BogDan Vatra, Ray Donelly и всем остальным, кто улучшал проект Necessitas все эти годы и Qt 5 для Android за последние несколько месяцев. И заранее благодарим всех, кто поможет проекту в будущем.

>>> Подробности

★★★★

Проверено: post-factum ()
Последнее исправление: post-factum (всего исправлений: 7)

Сплошные свистелки. И вправду, зачем нужна поддержка камеры, GPS, гуглокарт?

Впрочем, вся QML-ориентированность в Qt5 к этому и ведет.

Cinematic Experience быстро стало лицом проекта, потому что оно прекрасно показывает визуальные фичи Qt Quick 2, такие как программирование эффектов с помощью шейдеров, системы частиц, новая анимация PathAnimation, а также аппаратно ускоренный SceneGraph, благодаря которому демо показывает 60 кадров в секунду.

Грустно.

unfo ★★★★★
()

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

Хочу Ubuntu Phone.

UNiTE ★★★★★
()
Ответ на: комментарий от unfo

Сплошные свистелки. И вправду, зачем нужна поддержка камеры, GPS, гуглокарт?

Что им делать на современных телефончиках если они не умеют то что умеют нативные приложения? Они же не ради 100500ого кутима и клементины делают.

bhfq ★★★★★
()
Ответ на: комментарий от bhfq

Они же не ради 100500ого кутима и клементины делают.

К сожалению:

Вот отличный плеер, написанный Andy на QML, с эффектом, наложенным на видео с помощью фрагментного шейдера.

Не верю я в перспективы этого проекта. Серебряной пули нет.

unfo ★★★★★
()
Ответ на: комментарий от unfo

Легко создаваемые анимации и эффекты — уникальная фишка Qt, а вот камера, GPS и гуглокарты будут со временем.

quiet_readonly ★★★★
() автор топика
Последнее исправление: quiet_readonly (всего исправлений: 1)

Видео крутое, спасибо за классную новость!

tazhate ★★★★★
()

Отлично! Просто шикарно! Это же теперь можно писать приложение один раз, а запускать в ubuntu touch, android, ios и qnx!!! Обалдеть!

На недавно прошедшей выставке Embedded World 2013 на стенде Qt была представлена демонстрация портируемости приложений: на стоящих в ряд устройствах под управлением iOS, Android и QNX было запущено приложение Qt5 Cinematic Experience.

Это надо отметить, обязательно сегодня нажрусь!

sh4r4t4n
()
Ответ на: комментарий от shahid

А есть ли утилиты для стрипанья ненужных программе функций рантайма?

При сборке Qt можно выбрать конфиг. Там десятки опций, которые можно отключить, вырезав код из рантайма.

https://qt.gitorious.org/qt/qtbase/blobs/stable/src/corelib/global/qfeatures.txt

Dendy ★★★★★
()

Минимальный API, поддерживаемый в Qt 5 — 10, которому соответствует Android 2.3.3 («Gingerbread»). Это означает, что приложения также могут запускаться на бюджетных устройствах со старой версией Android, таких как Huawei Y100.

Бюджетные с 1.5 вообще-то, а 2.3 даже небюджетным ещё не всем светит. Дайте мне, например, хотя-бы 2.2 на garmin-asus a10, да ещё без брика.

mittorn ★★★★★
()

5.3

Первый коммит на нелёгком пути к Qt на Android был сделан в католическое Рождество

Притяжство же.

И да, неправильно говорить «католическое Рождество». Оно далеко не только католическое, это только у некоторых церквей 25 декабря 7-го января.

Ttt ☆☆☆☆☆
()

Про рождество можно и не писать.

Deleted
()

А кроме развлекаловки что-то на андроиде есть?

Stalin ★★★★★
()

Наконец-то Qt заползает на мобилки.

DarkAmateur ★★★
()
Ответ на: комментарий от quiet_readonly

Легко создаваемые анимации и эффекты — уникальная фишка Qt

Скомунизденная у xaml/wpf?

d9d9 ★★★★
()

как пропатчить KDE2 под FreeBSD Android?

marx
()
Ответ на: комментарий от linuxhater

Уже заметны тормоза. Надеюсь, опенсорсные говно-тулкиты все-таки не станут мейнстримом.

Ога, а по ссылке написано что везде 60 FPS выдает. Но вам наверное мало...

Kosyak ★★★★
()

Уже сколько времени собирался учить жабу, а теперь, оказывается, и не надо.

devpony
()

Здорово, только поздно. Теперь будут срачи dalvik vs qt :)

gh0stwizard ★★★★★
()
Ответ на: комментарий от unfo

Сплошные свистелки. И вправду, зачем нужна поддержка камеры, GPS, гуглокарт?

GPS поддерживается уже хрен знает сколько лет еще с Qt4 (QtMobility).

alex-w ★★★★★
()
Ответ на: комментарий от Extraterrestrial

А kde под android будет?

насчет всего KDE не знаю, но некоторые приложения вроде как собирались портировать.

alex-w ★★★★★
()

А насколько все это совместимо без каких либо доработок при пререносе между платформами qt-android и qt-x11? Я это к тому, что пора наконец задуматься не над вопросам создания приложений для Андроид как такового, а над созданием нового стандарта приложений, способных работать на широком спектре устройств - andoid, linux-phone, linux-desktop... только таким путем можно создать критичискую массу приложений и инфраструктуру способную потеснить тот же MS на всем рынке ПО в целом.

anonymous
()
Ответ на: комментарий от quiet_readonly

смерть андроиду

Чувствуется копирастическая рука. Закапывать надо ондроид с гуглом. А то опросы маркетинговые для впаривания на ЛОРЕ и говнохакер журнал уже со статейками «прокуриваем Windows 8 программирование.

anonymous
()
Ответ на: комментарий от Kosyak

На заборе тоже написано. Я бы не дал выше 15 в самых трудных местах. Скорость отклика снижена.

linuxhater
()

хачу раскладушку на android, устал от сенсора и qwerty клав.

eR ★★★★★
()

и все это в свободное от работы время ?

kto_tama ★★★★★
()
Ответ на: комментарий от special-k

Если приложение спроектированно так, что можно развести код использующий gui (QtGui) и рантайм (QtCore), то под Андройд приложение переносится очень быстро, переписав только gui часть на Java.

anonymous
()

А как обстоит дело у Qt со всякими яблофонами, кто-нибудь имел дело? Если Qt работает на них, имеет ли смысл использовать его при создании нового приложения, или все-таки лучше использовать родные инструменты?

orm-i-auga ★★★★★
()
Ответ на: комментарий от orm-i-auga

по слухам, работает всё кроме Qt Quick 2.0 и V8, ну понятно что QML в пролете, хотя QML 1.1 работает

ну базовую часть можешь видимо на Qt писать, а GUI на родных

I-Love-Microsoft ★★★★★
()

Не заклюют тебя за «вольный» перевод? Ты же на ЛОРе.

flowers4ever
()
Ответ на: комментарий от mittorn

Бюджетные с 1.5 вообще-то

Добро пожаловать в 2013-ый год. Современный бюджетный android это китаец с fullhd экраном и android 4.0.4.

Дайте мне, например, хотя-бы 2.2 на garmin-asus a10

А вот это не «бюджетный», а «безнадёжно устаревший даже на момент выхода».

Popil_Bablosov
()
Ответ на: комментарий от Popil_Bablosov

Это 2.1 безнадёжно устарел, а 2.2 еще не очень сильно ограничивает.

anonymous
()
Ответ на: комментарий от Ttt

Я к тому что иметь начало года не совпадающим с ивентом от которого его и считают стремно в обоих случаях.

zz ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.