Qt sur Android ?
Un développeur indépendant travaille sur le projet et sort un premier outil de portage d'applications

Le , par Gordon Fowler, Expert éminent sénior
Qt ne sera pas porté sur Windows Phone 7. La décision est claire et a été répétée à plusieurs reprise par Nokia.

Cette décision, qui fait suite au choix startégique du finlandais de prendre Windows Phone 7 comme plateforme de référence pour ses futurs smartphones pose de très nombreuses questions sur l'avenir du framework (utilisé par MeeGo, Symbian mais aussi le bureau KDE, etc.).

La communauté n'est pas rassurée et les tentatives pour ramener un peu de sérénité se multiplient.

C'est dans ce contexte qu'est arrivé dimanche dernier un outil, baptisé Necessitas. « J'ai fait le rêve qu'un jour je pourrai porter les applications Qt existantes sur Android […] que je pourrais créer, gérer, compliler, déployer, débugguer ces applications Qt avec un IDE de première classe », écrit le développeur du projet, « Ce rêve est à présent réalité ».

Necessitas n'en est qu'à sa phase alpha, autrement dit à ses débuts. La suite d'outils ne peut donc pas être utilisée en production (ou en tout cas il n'est pas recommandé de le faire).

Le responsable du projet tient également à apporter une précision importante « Je veux que les choses soient claires, ce projet est un travail de la communauté. Ni Google, ni Nokia ne sont impliqués ». Indépendant, donc, mais pas ingrat « je suis très reconnaissant envers Google parce qu'ils ont réalisé un OS merveilleux et véritablement libre, je leur suis très reconnaissant d'avoir un esprit ouvert et d'avoir permis le développement de ce projet ; et je suis très reconnaissant envers Trolltech et Nokia parce qu'ils ont fait le meilleur framework C++ de tous les temps ».

L'outil (répétons-le encore très incomplet) est disponible sur cette page

A essayer donc pour redonner un peu de moral aux développeurs Qt pessimistes.

Source : Fil de discussion sur Necessitas

Et vous ?

Intéressé(e) par cet outil ? Vous parait-il avoir un avenir ou pensez-vous qu'un tel projet est difficilement réalisable « en indépendant » ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de kedare kedare - Membre extrêmement actif http://www.developpez.com
le 24/02/2011 à 12:49
Citation Envoyé par gbdivers  Voir le message
Qt gère les styles natifs des plateformes donc une application Qt sur un windows ressemblera à une application windows, sur un mac à une application mac et sur un smartphone à une application smartphone (donc avec un style adapté aux petits écrans)

Oui mais non,
C'est bien que les contrôles soit natif, mais ça suffit pas, chaque système a sa "Design Guideline", et faire des interfaces multiplateforme va dans 90% des cas violer celle-ci...

Exemple:
http://msdn.microsoft.com/en-us/library/aa511440.aspx
http://developer.apple.com/library/m...XHIGIntro.html
Avatar de gbdivers gbdivers - Inactif http://www.developpez.com
le 24/02/2011 à 13:19
C'est bien que les contrôles soit natif, mais ça suffit pas, chaque système a sa "Design Guideline", et faire des interfaces multiplateforme va dans 90% des cas violer celle-ci...

Oui mais non aussi

Le framework fournit les fonctionnalités mais ensuite, c'est aux développeurs de respecter (avec la charge de travail supplémentaire que cela nécessite) ou non les recommandations spécifiques à une plateforme.
Et c'est une question de choix : on peut vouloir qu'une application soit totalement identique sur toutes les plateformes, pour que les utilisateurs qui travaillent sur plusieurs plateformes s'y retrouvent plus facilement (c'est pas exemple le cas de Qt Creator, l'IDE de Qt)
Avatar de stardeath stardeath - Membre expert http://www.developpez.com
le 24/02/2011 à 14:28
Citation Envoyé par gbdivers  Voir le message
Et c'est une question de choix : on peut vouloir qu'une application soit totalement identique sur toutes les plateformes, pour que les utilisateurs qui travaillent sur plusieurs plateformes s'y retrouvent plus facilement (c'est pas exemple le cas de Qt Creator, l'IDE de Qt)

oui peut être mais ça c'est impossible, un écran timbre poste ne pourra physiquement pas afficher de la même façon une application conçu pour du full hd. et de l'autre sens on aura une appli disproportionnée.

qt ne pourra pas être multi plateforme, ou alors il suivra la course de java, une version full pour machine normale et une version allégée pour terminal mobile, avec la cata que l'on connait.
Avatar de gbdivers gbdivers - Inactif http://www.developpez.com
le 24/02/2011 à 14:51
oui peut être mais ça c'est impossible, un écran timbre poste ne pourra physiquement pas afficher de la même façon une application conçu pour du full hd. et de l'autre sens on aura une appli disproportionnée.

Je pensais portable sur les différents desktop ou sur les différentes plateformes mobiles. Effectivement, on ne pourra pas avoir une application tournant avec la même ihm sur desktop et mobile. Mais la même ihm devra pouvoir tourner sur différentes résolutions (rien que chez nokia, il y a différents modèles d'écran avec des résolutions différentes)

qt ne pourra pas être multi plateforme, ou alors il suivra la course de java, une version full pour machine normale et une version allégée pour terminal mobile, avec la cata que l'on connait.

Je connais pas assez java donc de quel cata parles tu ?
Sinon, Qt est multiplateforme ! Il est déjà utilisé pour développer sur mobile par Nokia et sur desktop depuis longtemps. L'arrivée du portage sur Android ne change rien. Donc s'il y a des problèmes spécifiques aux mobiles, ils seront résolus par les développeurs de Qt (sauf problèmes spécifiques à Android, mais les problèmes de prise en charge de résolutions hétérogènes ne sont pas spécifiques à Android)
Mais à part quelques tests, je n'ai jamais beaucoup travaillé sur mobile donc peut être que je me rend pas compte du problème
Avatar de stardeath stardeath - Membre expert http://www.developpez.com
le 24/02/2011 à 15:23
Citation Envoyé par gbdivers  Voir le message
Je pensais portable sur les différents desktop ou sur les différentes plateformes mobiles. Effectivement, on ne pourra pas avoir une application tournant avec la même ihm sur desktop et mobile. Mais la même ihm devra pouvoir tourner sur différentes résolutions (rien que chez nokia, il y a différents modèles d'écran avec des résolutions différentes)

au temps pour moi.

Citation Envoyé par gbdivers  Voir le message
Je connais pas assez java donc de quel cata parles tu ?

le fait qu'il existe plusieurs versions de java selon les marques de portables plus ou moins complètes qui fait que tu ne sais jamais si les possibilités offertes sur ta plateforme existe chez une autre.

bref, j'ai confondu l'écriture unique des versions desktop et mobile d'une appli avec le multi-plateforme. mea culpa
Avatar de sysedit sysedit - Membre averti http://www.developpez.com
le 24/02/2011 à 15:43
Surtout que Qt essaye de s'adapter aux guidelines de chaque système. Par exemple, l'espacement entre widgets dans un formulaire est défini par les guidelines ; sur osx, l'espace entre deux edits n'est pas le même qu'entre un bouton et un edit. Le layout de Qt va essayer de respecter cette contrainte.

Maintenant, c'est clair que si les guidelines disent "pas plus de 3 boutons sur un formulaire", ce n'est pas Qt qui va le gérer pour vous.
Avatar de gbdivers gbdivers - Inactif http://www.developpez.com
le 24/02/2011 à 15:48
Non, c'est moi, je n'avais pas précisé que je voyais quand même 2 développements différents, desktop et mobile

le fait qu'il existe plusieurs versions de java selon les marques de portables plus ou moins complètes qui fait que tu ne sais jamais si les possibilités offertes sur ta plateforme existe chez une autre.

Pour les versions "officielles" de Qt, il y a un support spécifique pour chaque plateforme, avec différentes priorités. Mais à priori, si un portage est fait sur une plateforme, la totalité de Qt est présente (ie on aura pas d'erreur de compilation si on compile un programme qui a été développé sur une autre plateforme, si on n'écrit pas du code spécifique à la première plateforme ; par contre, les différentes fonctionnalités dépendront de l'appareil de destination et doivent être testé avant utilisation : gps, écran tactile, etc.).

Mais peut être que l'on pourra avoir une fonctionnalité présente sur l'appareil mais non pris en charge par la version de Qt sur cette plateforme (ça doit dépendre aussi de la disponibilité des pilotes et leurs antériorités par rapport à la version de Qt)

Pour Android, idem je suppose. Et je suppose aussi que le développeur de qt-android ne pourra pas gérer seul toutes les versions d'Android et la prise en charge de toutes les fonctionnalités. En espérant qu'il a rapidement une aide pour cela.

Mais cela me semble être un problème général du développement informatique, sauf si on utilise que le clavier, la souris et l'écran, qui sont dispo sur tous les ordinateurs... sauf si le programme doit tourner aussi sur serveurs... Bref, ce problème me semble générique
Avatar de daminetreg daminetreg - Membre à l'essai http://www.developpez.com
le 24/02/2011 à 16:35
Bonjour à tous, je participe au projet, l'outil n'est pas si incomplet que ça je vous garantie.
Vous pouvez utiliser l'installeur pour mettre en place l'environnement de développement en 5 minutes: https://sourceforge.net/p/necessitas...essitas%20SDK/ (le guide est en anglais, mais ne requière vraiment aucune traduction vu sa légèreté)

Vous pouvez tester une démo sur un périphérique Android connecté au Market de Google: https://market.android.com/details?i....animatedtiles
Avatar de yan yan - Rédacteur http://www.developpez.com
le 24/02/2011 à 16:47
Citation Envoyé par stardeath  Voir le message
le reste n'ayant que peu d'intérêt quand on a boost

Et pourtant y as des chose très puissante que n'as pas boost.
Ce que fournie Qt complète bien ce que te fournie boost.
Avatar de gbdivers gbdivers - Inactif http://www.developpez.com
le 28/02/2011 à 13:09
Encore un annonce sur Qt Labs sur qt-android, Bringing Qt applications to Android – a quickstart video, avec une vidéo montrant la facilité d'utilisation de qt-android (appelé "Necessitas").

Il faut également préciser la travail accomplit par BogDan, le créateur de Necessitas : non seulement, il a fait le portage de Qt sous Android quasiment tout seul, mais il a également intégré Qt Creator pour Android, fait le portage de Qt Mobility (le module Qt apportant de nombreuses fonctionnalités utiles pour les mobiles), créé un installateur pour Necessitas et créé Ministro, une application Android permettant d'installé les libs Qt sur un mobile Android (téléchargeable sur l'Android Market)

Que demander de plus ?
Peut être que de nombreuses personnes l'aident dans son projet. Et que d'autres projets similaires voient le jour !
Avatar de ymoreau ymoreau - Membre émérite http://www.developpez.com
le 03/03/2011 à 10:01
C'est vraiment un boulot formidable qu'a fait le développeur (et l'équipe?) de ce projet. Android est devenu vraiment incontournable, et le fait de pouvoir utiliser Qt est une belle ouverture pour le framework, qui devrait augmenter sa popularité.
Offres d'emploi IT
Assistant Contrôleur de Gestion /BUDGET CONTROLLER APPRENTICESHIP
Société pharmaceutique - Ile de France - Rungis Silic
Développeur SharePoint H/F
Keework - Ile de France - Boulogne-Billancourt (92100)
Développeur php - symfony2 expérimenté / chef de projet Web
Eyrolles - Ile de France - Paris (75000)

Voir plus d'offres Voir la carte des offres IT
Contacter le responsable de la rubrique Accueil