Original-URL des Artikels: https://www.golem.de/news/kdab-qt-fuer-android-erleichtert-gl-app-entwicklung-1401-104090.html    Veröffentlicht: 22.01.2014 15:11    Kurz-URL: https://glm.io/104090

KDAB

Qt für Android erleichtert GL-App-Entwicklung

Für Android lassen sich nun Qt-Apps entwickeln, die sowohl OpenGL- als auch rasterbasierte Oberflächen nutzen. Umsetzbar ist das durch mehrere native Oberflächen.

Bisher konnten mit Qt geschriebene Android-Apps nur eine native Oberfläche erzeugen, die darüber hinaus nur entweder von reinen Raster-Apps oder nur von OpenGL-Apps genutzt werden konnte. Letztere ließen auch nur ein Top-Level-Widget zu, was die Anwendungen meist unbrauchbar machte. Diese Beschränkungen sind nun aufgehoben, wie Bogdan Vatra schreibt, der für KDAB an der Qt-Android-Portierung arbeitet.

Statt der bisher zwei Android-Platform-Plugins ist es dank der Arbeiten Vatras nun möglich, nur noch ein Plugin zu nutzen, was es ermöglicht, GL- und Nicht-GL-Widgets in einer App zu kombinieren. Damit lässt sich zumindest theoretisch der native Mediaplayer nutzen, um etwa Videos mit DRM abzuspielen. Außerdem sollte es einfacher sein, Software zu schreiben, die zwingend auf OpenGL angewiesen ist, wie etwa QML-Apps.

Z-Achse bleibt schwierig

Ermöglicht wird dieses Verhalten durch die Verwendung mehrerer nativer Oberflächen in Qt, was laut Vatra unter Android aber wesentlich schwieriger ist als auf allen anderen von Qt unterstützten Plattformen. Dabei sei das Erstellen der Oberflächen selbst nicht das Problem, schwierig sei es vielmehr, die richtige Reihenfolge der übereinanderliegenden Oberflächen zu kontrollieren.

Die Ordnung entlang der imaginären Z-Achse ist derzeit aber darauf beschränkt, eine Oberfläche über die andere zu legen. Sollten zwei Oberflächen gleichzeitig die Kennzeichnung der höheren tragen, lässt sich das Verhalten nicht beeinflussen.

Weiterhin ist es nicht möglich, zwei GL-Fenster korrekt übereinanderzulegen, und die nativen Kontrollelemente lassen sich derzeit nur sehr wenig verändern. Auch das Überlagern der Android-Knöpfe ist noch nicht möglich, was sich künftig durch die Verwendung von Webview jedoch ändern soll.

Die Möglichkeit, GL- und Nicht-GL-Widgets zu kombinieren, ist nur eine von vielen Funktionen, die Vatra zusammen mit Digia-Entwicklern für den Android-Port von Qt zu Beginn des Jahres diskutierte. Dabei seien auch weitergehende Pläne für Funktionen bis hin zu Qt 5.5 entstanden, welches frühestens im Frühjahr 2015 erscheinen wird.  (sg)


Verwandte Artikel:
Open Source: Qt für Android unter der KDE-Lizenz   
(04.12.2013, https://glm.io/103137 )
C++ Framework: Qt 5.10 streamt UIs und bringt moderne Crypto   
(08.12.2017, https://glm.io/131567 )
C++ Framework: Qt 5.9 verbessert Langzeitpflege   
(31.05.2017, https://glm.io/128132 )
3D Studio: Nvidia spendiert Qt Hunderttausende Zeilen Code   
(21.02.2017, https://glm.io/126303 )
Linux-Desktop: KDE Plasma 5.9 bringt globale Menüs zurück   
(31.01.2017, https://glm.io/125912 )

© 1997–2020 Golem.de, https://www.golem.de/