Le framework Qt Web Runtime débute ici
Il permet à des applications Web d'accéder aux ressources des mobiles avec une API JavaScript

Le , par dourouc05, Responsable Qt
Il y a peu, dès Qt 4.4 en réalité, Qt dispose de son wrapper autour de WebKit : Qt WebKit. Depuis, ce module est devenu l'un des plus utilisés de Qt ; en effet, utiliser du contenu Web est extrêmement demandé par le marché actuel. Dans les télévisions, les netbooks, les téléphones mobiles et bien d'autres périphériques domestiques, l'utilisation de l'Internet est absolument irremplaçable, l'application étant hébergée sur le Web. Il était donc temps de fournir une couche supplémentaire pour faciliter et sécuriser le développement d'applications basées sur le Web. D'où un nouveau projet pour les équipes de développement de Qt : le Qt Web Runtime, basé sur Qt et sur Qt WebKit, grâce auquel les applications Web deviendront plus facilement plus fonctionnelles.

L'un des objectifs de ce framework est de fournir un runtime Web basé sur les standards du W3C. Ainsi, vous pourrez facilement développer et déployer des applications Web sur des smartphones ou d'autres plateformes de la même manière qu'une application plus traditionnelle.

La fonctionnalité-clé ? Vous pouvez accéder au matériel (appareil photo ou accéléromètre, par exemple) et aux autres ressources de l'appareil (liste de contacts, messages...) via des API JavaScript.

En code, voici ce que donne l'accès à l'accéléromètre du périphérique :

Code javascript : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
var wrtSensors = nokia.device.load("sensors");  
wrtSensors.startChannel(callback, "AccelerometerAxis", errorCallback);  
  
function callback(data) {  
       console.log("x-axis: " + data.axisX + " y-axis: " + data.axisY + " z-axis: " + data.axisZ);  
}        
  
function errorCallback(err) {  
       console.log("Ouch, " + err.message + "error code:" + err.code);  
}

Il suffit de s'enregistrer aux notifications concernant l'accélération (soit le canal AccelerometerAxis) grâce à la méthode startChannel. Ensuite, vos fonctions de rappel sont utilisées chaque fois que le capteur reçoit un signal d'accélération.

Qt fonctionnant sur toute une série de plateformes, QWR fera de même et supportera toute une variété de plateformes. En tant que partie intégrante de Qt, cette technologie sera disponible ainsi que ses sources, selon le nouveau modèle de gouvernance (qui a notamment ouvert les repository de Qt sur Gitorious).

Ce framework est actuellement assez jeune et ne dispose pas encore de toutes les fonctionnalités qu'il devrait posséder à terme ni du support de nombreuses plateformes. Cependant, selon le modèle de contribution, chaque utilisateur pourra construire ce framework, grâce notamment à des retours dessus - vous aurez une place active dans son développement.

En attendant plus de détails, vous pourrez bien sûr aller sur le forum nouvellement ouvert du Qt Developer Network - en anglais uniquement. Le forum Plateformes et ceux de la rubrique Mobiles sont bien évidemment ouverts à toute question sur le sujet - en français !

Source : The Qt Web Runtime journey begins…

Voir aussi
Le réseau de développeurs Qt en beta publique : le Qt Developer Network veut rassembler toutes les connaissances sur Qt
Télécharger les préversion de QtWRT
La rubrique Qt de Developpez.com
La rubrique Mobiles de Developpez.com
La rubrique JavaScript de Developpez.com

Et vous ?

Développez-vous des applications qui tireraient profit d'un tel framework ? Quels avantages en retireriez-vous ? Quels en seraient les inconvénients ?

Billet original


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


 Poster une réponse

Avatar de _skip _skip - Expert éminent http://www.developpez.com
le 03/08/2010 à 9:17
Je dois dire que je ne comprends pas bien de quoi il s'agit et surtout en quoi c'est différent de ce dont on dispose actuellement avec le composant WebKit de Qt.
Avatar de dourouc05 dourouc05 - Responsable Qt http://www.developpez.com
le 03/08/2010 à 11:18
La différence est assez énorme : avec QtWebKit, tu as de quoi afficher des pages Web, exécuter le code JavaScript qu'il y a dedans et c'est tout. Avec QtWebRuntime, l'application Web peut aussi accéder à de nouvelles API en JavaScript pour accéder au matériel (accéléromètre ou autres capteurs, par exemple).
Avatar de Floréal Floréal - Membre éclairé http://www.developpez.com
le 03/08/2010 à 11:30
Le fait de pouvoir accéder directement aux couches matérielles n'ouvrent pas d'énormes failles de sécurité? A moins que l'utilisateur ait à donner son accord comme lorsqu'une application flash ou une applet java a besoin, sur PC, d'accéder aux périphériques...
Avatar de dourouc05 dourouc05 - Responsable Qt http://www.developpez.com
le 03/08/2010 à 11:46
Ils ne parlent pas d'accès direct : regarde le code de la news. Tu branches un callback sur un événement déclenché par le matériel. Tu ne vas pas trifouiller directement sur le matériel, tu as, comme toujours ou presque, Qt qui vient fournir une couche entre les deux.
Avatar de _skip _skip - Expert éminent http://www.developpez.com
le 03/08/2010 à 12:21
En lisant j'ai pensé que ça aurait pu être le début d'un framework RIA made in Qt. Mais en fait ça reste quand même du client lourd... Je sais pas si ce mélange entre technos de site web et applis desktop est vraiment intéressant, je me pose la question.
Avatar de spidermario spidermario - Membre éclairé http://www.developpez.com
le 03/08/2010 à 13:36
Ce code ne contient-il pas, d'ailleurs, des astérisques en trop ?
Avatar de dourouc05 dourouc05 - Responsable Qt http://www.developpez.com
le 03/08/2010 à 14:07
Citation Envoyé par spidermario  Voir le message
Ce code ne contient-il pas, d'ailleurs, des astérisques en trop ?

En effet, elles viennent d'être retirées.
Offres d'emploi IT
Ingénieur SW télécom H/F
Atos - Provence Alpes Côte d'Azur - Aix-en-Provence (13100)
Développeur c++/qt h/f
CTS - Pays de la Loire - Nantes (44000)
Leader technique software télécom H/F
Atos - Provence Alpes Côte d'Azur - 206581

Voir plus d'offres Voir la carte des offres IT
Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -