Qt Quick für Android
Qt Quick für Android Übersicht
Die Grundlage dieses Ansatzes besteht darin, Qt QML-APIs in einer eingebetteten Form anzubieten, so dass die Anwendung eine relativ typische Android-Anwendung bleibt. Dieser Ansatz bietet einen eher standardmäßigen Android-zentrierten Ansatz auf Kosten der Ausnutzung der plattformübergreifenden Natur einer Qt-Anwendung. Er eignet sich am besten für das Hinzufügen wünschenswerter Qt-Funktionen zu einer bestehenden Android-Anwendung.
- Android erstellt den Qt-Inhalt und steuert ihn.
- Für die Entwicklung wird Android Studio mit dem Plugin Qt Tools for Android Studio verwendet.
- Für Qt-Inhalte werden Qt Creator oder Qt Design Studio verwendet.
- Die wichtigsten Sprachen sind Java und Kotlin, wobei QML für bestimmte Teile wie 3D-Inhalte verwendet wird.
- Sie können alle Android-APIs verwenden, die Sie wollen, aber Sie können JNI verwenden, wenn Sie mehr Kontrolle über die Kommunikation zwischen Ihrem Java-Code und QML wünschen. Siehe QJniObject und QJniEnvironment.
Der Unterschied zu Qt für Android
Der auffälligste Unterschied zwischen diesen Ansätzen ist die Projektstruktur. Qt für Android-Anwendungen sind CMake-Projekte, die für Android oder andere Plattformen erstellt werden können, während ein Qt Quick für Android-Projekt ein Android-Projekt ist, das QML-Inhalte enthält und nur für Android erstellt werden kann.
Das Hauptziel des Qt for Android-Ansatzes besteht darin, Qt die meiste Arbeit der Architektur und des Boilerplate-Codes der Anwendung zu überlassen, damit Sie sich auf den Inhalt konzentrieren können. Es bietet einen vollständigen und zuverlässigen plattformübergreifenden Ansatz.
- Qt erstellt und steuert die Android-App.
- Qt Creator, Qt Design Studiooder Visual Studio kann verwendet werden.
- Die wichtigsten Sprachen sind C++ und QML.
- Android-Spezifika sind eher versteckt; Qt behandelt diese intern.
- Um Android-APIs zu verwenden, die noch nicht als Qt-APIs verfügbar sind, müssen Sie JNI verwenden. Siehe QJniObject und QJniEnvironment.
Weitere Einzelheiten zur Architektur von Qt für Android finden Sie unter Funktionsweise von Qt für Android.
So funktioniert Qt Quick für Android
Qt Quick for Android bietet Ihnen Android-APIs, mit denen Sie QML-Inhalte als Android-Ansicht in Ihr Projekt einfügen können.
APIs
Dies sind die öffentlichen Java- und Kotlin-APIs, die Sie in einer Android-App zum Einbetten von QML verwenden werden.
- Qt Quick View Android Klasse
- QtAbstractItemModel Android Klasse
- QtAbstractListModel Android Klasse
- Schnittstelle QtQmlStatusChangeListener (die das QtQmlStatus-Enum verwendet)
- QtModelIndex Android Klasse
Um diese Klassen zu verwenden, müssen Sie Folgendes in Ihre build.gradle
Datei aufnehmen:
packagingOptions.jniLibs.useLegacyPackaging true
Hinweis: Siehe die CMake-Variable QT_ANDROID_GENERATE_JAVA_QTQUICKVIEW_CONTENTS für weitere Informationen zur Java-Code-Generierung von QML-Komponenten.
API-Beispiele
- Qt Quick für Android Studio Projekte
- QtAbstractListModel für QML freigeben
- Verwendung von QtAbstractItemModel in Android Studio-Projekten
Werkzeugausstattung
Das Qt Gradle Plugin und das Qt Tools for Android Studio Plugin werden von Qt für eine einfache Entwicklung bereitgestellt. Sie können das Gradle Plugin unabhängig von einer IDE als Teil Ihrer Build-Toolchain verwenden. Qt Tools for Android Studio verwendet das Plugin, um Ihre Projekte in Android Studio zu erstellen.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.