Das Tool „harmonydeployqt“
Hinweis: Qt für HarmonyOS befindet sich in der Technologievorschau und kann sich in zukünftigen Versionen ändern.
Das Verpacken einer Qt-Anwendung für HarmonyOS umfasst viele Schritte, daher enthält Qt ein Tool, das diese Arbeit für Sie übernimmt. Beim Erstellen des CMake- <target>_make_hap -Ziels wird „ harmonydeployqt “ automatisch ausgeführt, sodass Sie es normalerweise nicht manuell aufrufen müssen. Der gesamte Verpackungs- und Bereitstellungsprozess wird unter „Erstellen und Bereitstellen von Qt-Anwendungen für HarmonyOS“ beschrieben.
So funktioniert es
Ähnlich wie „androiddeployqt“ sammelt „ harmonydeployqt “ alles, was die Anwendung zum Ausführen benötigt, und stellt ein bereitstellungsfähiges Paket zusammen:
- Es sammelt die gemeinsam genutzte Bibliothek der Anwendung, das HarmonyOS-Plattform-Plugin (
libqohos.so), die erforderlichen Qt-Module und -Plugins sowie – bei „ Qt Quick “-Anwendungen – die QML-Module. - Diese werden zusammen mit den Metadaten und Berechtigungen, die über die Qt for HarmonyOS CMake-API deklariert wurden, in eine HarmonyOS-Anwendungsvorlage eingebunden.
- Es ruft das OpenHarmony-Build-Tool „
hvigor“ auf, um das endgültige HarmonyOS Ability Package (HAP) zusammenzustellen.
Die Einstellungen, die diesen Prozess steuern, werden in einer JSON-Konfigurationsdatei an das Tool übergeben, die der CMake-Build für Sie generiert.
Befehlszeilenargumente
Das einzige erforderliche Argument ist „ --input “. Die untenstehende Liste ist auch verfügbar, wenn Sie „ --help “ an „ harmonydeployqt “ übergeben.
| Argument | Beschreibung |
|---|---|
--input <file> | JSON-Konfigurationsdatei, die die Anwendung und die zu installierende Qt-Installation beschreibt. Erforderlich. |
--output <dir> | Ausgabeverzeichnis für das generierte HarmonyOS-Projekt. |
--hvigor <path> | Pfad zum Skript „ hvigorw “, das zum Erstellen des HAP verwendet wird. Kann auch über die Umgebungsvariable „ QT_HARMONYOS_HVIGOR “ festgelegt werden. |
--install | Installieren Sie das resultierende HAP mithilfe von „ hdc “ auf einem angeschlossenen Gerät. |
--release | Erstellen Sie die Release-Konfiguration. Die Standardeinstellung ist „Debug“. |
--no-build | Generieren Sie das HarmonyOS-Projekt, überspringen Sie dabei jedoch die Erstellung des HAP. |
--test-bundle | Aktivieren Sie den Test-Bundle-Modus, der alle Test-Binärdateien in einem einzigen HAP bündelt. |
--verbose | Aktivieren Sie die ausführliche Ausgabe. |
--depfile <path> | Schreiben Sie eine Abhängigkeitsdatei für das Build-System in den angegebenen Pfad. |
--depfile-base <dir> | Basisverzeichnis, das für relative Pfade in der Abhängigkeitsdatei verwendet wird. |
--help | Zeige die Liste der verfügbaren Argumente an. |
Signieren des HAP
Ein HAP muss signiert werden, bevor es auf einem Gerät installiert werden kann. Sie können das Signaturmaterial entweder über Befehlszeilenargumente oder über die entsprechenden Umgebungsvariablen bereitstellen. Wenn beides angegeben wird, hat das Befehlszeilenargument für das jeweilige Feld Vorrang.
| Argument | Umgebungsvariable | Beschreibung |
|---|---|---|
--signing-cert-path <p> | QT_HARMONYOS_SIGNING_CERT_PATH | Pfad zur Zertifikatsdatei „ .cer “. |
--signing-profile <p> | QT_HARMONYOS_SIGNING_PROFILE | Pfad zum „ .p7b “-Bereitstellungsprofil. |
--signing-store-file <p> | QT_HARMONYOS_SIGNING_STORE_FILE | Pfad zum „ .p12 “-Schlüsselbund. |
--signing-key-alias <a> | QT_HARMONYOS_SIGNING_KEY_ALIAS | Schlüsselalias innerhalb des Keystores. |
--signing-key-password <s> | QT_HARMONYOS_SIGNING_KEY_PASSWORD | Passwort für den verschlüsselten Schlüssel. |
--signing-store-password <s> | QT_HARMONYOS_SIGNING_STORE_PASSWORD | Passwort für den verschlüsselten Keystore. |
--signing-alg <alg> | QT_HARMONYOS_SIGNING_ALG | Signaturalgorithmus. Standardmäßig „ SHA256withECDSA “. |
Die Passwörter müssen als „ hvigor-encrypted “-Blobs vorliegen, nicht als Klartext. Die Signierung erfolgt nach dem Alles-oder-Nichts-Prinzip: Wenn eine Signatureingabe festgelegt ist, müssen alle sechs erforderlichen Werte (Zertifikat, Profil, Keystore, Schlüsselalias, Schlüsselpasswort und Keystore-Passwort) vorhanden sein. Andernfalls bleibt das HAP unsigniert.
Ausführen der Anwendung
Installieren und starten Sie die resultierende HAP auf einem angeschlossenen HarmonyOS-Gerät oder im Emulator. Am bequemsten lassen sich die HAP bereitstellen und debuggen, indem Sie das generierte Projekt in DevEco Studio öffnen und die dortigen Ausführungs- und Debugging-Tools nutzen.
Weitere Informationen zum Verpacken und Bereitstellen einer Qt-Anwendung für HarmonyOS finden Sie unter „Erstellen und Bereitstellen von Qt-Anwendungen für HarmonyOS“.
© 2026 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.