Developpez.com - Rubrique Qt

Le Club des Développeurs et IT Pro

iOS sera supporté dans Qt 5.2

Une première version sera disponible avec Qt 5.1

Le 2013-03-05 15:52:08, par dourouc05, Responsable Qt & Livres
Tout de go, Digia annonce que Qt 5.2 supportera iOS, soit vers la fin 2013. Cependant, tous les détails ne sont pas encore décidés (comme ce qui concerne les restrictions sur l’App Store ou le support de parties plus anciennes du code de Qt). Qt 5.1, en tout cas, contiendra une première version de ce support, le code a été intégré vendredi dernier.

Tout le développement et le déploiement passent par Xcode. Actuellement, la manière de procéder est la création d’un fichier de projet .pro, qui est exporté en un fichier de projet Xcode par QMake (et réexporté à chaque modification), ce dernier étant alors utilisé dans Xcode. Toute l’édition du code peut évidemment se faire en dehors de cet EDI.

Le style Mac de Qt pour plateformes desktop utilise l’API HITheme d’OS X pour l’affichage d’éléments natifs à l’écran. Cependant, cette API n’a pas d’équivalent sur iOS, créer une classe QiOSStyle comme l’actuelle QMacStyle n’est donc pas possible. Les styles multiplateformes tels que le nouveau Fusion sont cependant disponibles. Tous les efforts sur le style des applications seront portés sur les contrôles intégrés dans Qt Quick 2.

Apple limite fortement les possibilités des applications sur iOS. Notamment, il n’est pas possible d’utiliser un compilateur de type JIT, tel que celui utilisé dans V8 – ce qui signifie qu’il n’y aura pas de Qt Quick 2 sur iOS pour le moment. Ce problème est bien connu et une solution est à l’étude.

Actuellement, déjà quelques modules fonctionnent correctement : les widgets, QGraphicsView, Qt Quick 1, OpenGL, les éléments tactiles et d’orientation.



Pour tester cette première ébauche, il est nécessaire d’avoir Xcode installé (avec les certificats et le périphérique configurés). Ensuite, il faut cloner qtbase

git clone git://gitorious.org/qt/qtbase.git qtbase-ios
cd qtbase-ios/

et le compiler (soit pour le périphérique, soit pour le simulateur).

./configure -xplatform unsupported/macx-ios-clang -developer-build -nomake examples -nomake tests -release [-sdk iphonesimulator]
make

Récupérer une démo et l’ouvrir dans Xcode :

git clone git://github.com/msorvig/qt-ios-demo.git
cd qt-ios-demo
../qtbase-ios/bin/qmake
open qt-ios-demo.xcodeproj

Source

Billet original
  Discussion forum
4 commentaires
  • SurferIX
    Membre chevronné
    Envoyé par dourouc05
    Digia annonce que Qt 5.2 supportera iOS, soit vers la fin 2013.
    Concrètement, cela signifie quoi ? On développe une appli avec Qt 5.1 et on pourra la déployer facilement sur iOS ? (Je m'excuse je ne suis pas très calé côté Qt).
  • dourouc05
    Responsable Qt & Livres
    Envoyé par SurferIX
    On développe une appli avec Qt 5.1 et on pourra la déployer facilement sur iOS ?
    Exactement.
  • Kaamui
    Membre expérimenté
    Sans obligation d'être sous OS X ? Ce serait une première.
  • gbdivers
    Inactif
    Envoyé par dourouc05
    Tout le développement et le déploiement passe par Xcode.
    Envoyé par dourouc05
    qui est exporté en un fichier de projet Xcode par QMake (et réexporté à chaque modification), ce dernier étant alors utilisé dans Xcode
    Envoyé par dourouc05
    il est nécessaire d’avoir Xcode installé
    Donc non. Il faut XCode et donc être sur Mac OS X