Apps für Nokias N9 - die Qt Tools & QML Components

2011-06-26 14:17

Mit der Vorstellung des N9 gab es auch ein Qt SDK Update, so dass es nun die Tools für die Entwicklung von MeeGo Apps für das N9 gibt. Über das Qt SDK hatte ich ja letztes Jahr bereits gebloggt. Allerdings müssen die Tools für die Entwicklung von Harmattan Apps extra installiert werden, mit dem Qt SDK Updater. Der Updater lässt sich manuell über "Hilfe" -> "Start Updater" starten. Das automatische Update auf das Qt SDK 1.1.2 installiert nicht die notwendigen Komponenten für die N9 Entwicklung. Nach dem der Updater gestartet ist, findet man im Reiter Package Manager die Harmattan Tools unter Experimental:

Der Qt SDK Updater mit den MeeGo Harmattan Tools

Nach der Installation hat man nun im Qt Creator die neuen Tools zur Verfügung. Es gibt auch einen neuen QML Projekttypen "Harmattan Application". Dies ist aktuell die beste Art Apps für das Nokia N9 zu entwickeln. Ein normales QML Projekt in QML und C++ lässt sich auch um das Buildtarget Harmattan erweitern. Ein Nachteil ist aktuell, das eine Harmattan Application nicht im Qt Simulator läuft. Qt Quick 1.1 und die Qt Quick Components werden noch nicht unterstützt durch diesen. Standardmäßig ist auch das Projekt so konfiguriert, das es im Qemu Emulator startet. Dies ist die größte Neuerung im Update, das automatisch ein lauffähiges Harmattan Image für Qemu installiert wird. Beim ersten compilieren des Projekts schlägt das Deployment auf den Emulator jedoch meistens fehl, weil Qemu erst gestartet werden muss, um dann das Image zu booten.

Sobald Qemu gestartet ist, hat man einen vollwertigen
Harmattan Emulator. Qemu benötigt etwas Zeit zum starten
und booten. Mit Hilfe des Emulators lassen sich Apps so ausführen,
als liefen sie auf einem N9.
So bald nun Qemu gestartet ist, lässt sich die App im Qt Creator
wieder starten. Diese erscheint dann im Emulator:

Hello World im Qemu Harmattan Emulator
tl_files/codenode/qtmobilesdk/harmattan_qemu.png

Qt Quick Components

Eine Harmattan Application besteht aus Qt Quick Comonents im UI. Damit verfügt QML nun auch über entsprechende Steuerelemente. Über die App Entwicklung mit Qt und QML habe ich ja bereits geschrieben, auch im Bezug auf das jetztige MeeGo Update. Da die Components auch auf QML basieren, hat sich an der Verbindung zwischen QML und C++ nichts geändert. Die Components bieten nun verschiedene UI Elemente zum erstellen der App Oberfläche an. Im QML Designer des Qt Creators lassen diese sich direkt in eine QML Oberfläche einbauen. Einen sehr guten Eindruck der QML Components für MeeGo vermittelt dieser Blogbeitrag. Dort wird auch erwähnt, das es aktuell eine Nokia Version der Components für Harmattan und eine Intel Version für MeeGo gibt. Beide sind weitestgehend kompatibel, allerdings gibt es gewisse Unterschiede. Harmattan wird im UI wohl auch ein ganz eigenes Look and Feel bieten, welches auf anderen MeeGo Geräten so nicht existiert.
Ein weiteres wichtiges Tool für die Entwicklung mit QML ist der QML Performance Monitor, welcher Analysen zum Verhalten einer QML App zur Laufzeit bietet. Leider ist dieser noch nicht im aktuellen Update enthalten.


Zurück