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 за последние несколько месяцев. И заранее благодарим всех, кто поможет проекту в будущем.

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

Сплошные свистелки. И вправду, зачем нужна поддержка камеры, 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 ()

QtSensos

Может быть, QtSensors

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

ну о ios можно только мечтать, оно нормально не работает

frozenix ★★★ ()

для Android
iOS

И сколько рантайм весит нынче?

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

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

shahid ★★★★★ ()
Ответ на: комментарий от 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 ☆☆☆☆☆ ()

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

Mystra_x64 ★★★★★ ()

вцелом

пацтолом

svu ★★★★★ ()

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

Stalin ★★★★★ ()
Ответ на: 5.3 от Ttt

Ты имел ввиду первое января не первого января?

zz ★★★★ ()

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

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

Бюджетные китайцы

Бюджетные китайцы нынче с 4.1 идут

anonymous ()

Разве приложения на столь низкоуровневом ЯП могут быть легко портируемыми..

special-k ★★★ ()
Последнее исправление: special-k (всего исправлений: 1)
Ответ на: комментарий от 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 ()
Ответ на: комментарий от zz

Ну и первое января тоже не первого, а 14-го.

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от 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 ★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.