Webkit soutient à son tour « Web Intent »
L'API universelle d'interopérabilité entre applications Web lancée par Google et Mozilla

Les rubriques (actu, forums, tutos) de Développez
Tags
Réseaux sociaux


 Discussion forum

Retrouvez le dossier complet de la rédaction
Le , par Idelways, Expert Confirmé Sénior
Mise à jour du 15/05/12

« Web Intent » est un projet qui veut faciliter les connexions entre applications Web en réduisant le plus possible le nombre de lignes de code nécessaires à ces dialogues. Une API universelle d'interopérabilité entre applications hébergées en quelque sorte (lire ci-avant).

Lancés par un ingénieur de Google sur une idée de la Fondation Mozilla, avec laquelle Google travaille de concert, les « Web Intents » viennent de gagner un nouveau soutien.

Les responsables du projet Webkit, le moteur de rendu de Safari (et de Chrome) ont fait savoir qu’ils étaient particulièrement intéressés et qu’ils soutenaient à présent ce standard.

Une bonne nouvelle, aussi bien pour les développeurs (à qui la balise <Intent> peut faciliter la vie) que pour les utilisateurs (qui bénéficieront d’applications/mash-up plus riches).

Ne reste plus qu’à espérer qu’Opera et Internet Explorer se joignent, eux aussi, au mouvement pour une API d’interopérabilité vraiment universelle.

Source : Webkit Project

Et vous ?

Pensez-vous qu'Opera et Internet Explorer vont se joindre au projet ?
« Web Intent » peut-il vous simplifier la vie ? Ou êtes-vous plutôt septique ?

Et aussi :

Exemples de Web Intents

MAJ de Gordon Fowler

Google crée une API universelle d'interopérabilité entre applications Web
Web Intents intéresse aussi la fondation Mozilla

L'ingénieur de Google James Hawkins révèle sur un billet de blog que sa compagnie travaille sur « Web Intents », un mécanisme qui devrait permettre aux applications Chrome (et Chrome OS) d'échanger des données sans être spécialement conçues pour coopérer.

L'idée est de créer une unique API que les applications Web peuvent toutes implémenter pour s'écouter mutuellement, échanger et traiter des données. Un concept très similaire au mode de communication inter-applications sur Android, la plateforme mobile de Google, et à un degré moindre (et plus abstrait) de la délégation en génie logiciel.

Pour illustrer cette ambitieuse entreprise, Google propose l'exemple d'un service de partage de photos qui peut donner la possibilité aux autres applications de les éditer à travers l'API Web Intents.
L'utilisateur pourra choisir l'application Web d'édition de photos d'une manière transparente pour le site de partage, ou même utiliser des générateurs pour modifier l'image.

« Avec Web Intents, vous serez capable de connecter votre application Web à un service avec à peine deux lignes de code, Chrome fera le plus gros travail pour vous », ainsi regrette-t-on que Google mène ce projet avec en vue, uniquement son navigateur et son OS-navigateur Chrome, et non avec l’intention de créer dès le départ un nouveau standard.

Toutefois, Hawkins souligne que la fondation Mozilla avait entrepris bien avant le travail sur un système similaire et que les deux acteurs incontournables du Web coopèrent pour créer une unique API Web Intents.

Comme pour les Intents sous Android, Web Intents prendra en charge un ensemble initial d'actions qui couvrent la majorité des cas de figure du Web d'aujourd'hui (édition, consultation, partage...). De nouveaux Intents pourront être proposés et documentés par les services Web. Google lancera un portail qui permettra de consulter la documentation des Intents existants et d'en créer d'autres.

Plus concrètement, le mécanisme fonctionnera de la sorte :

L'application de partage de photo peut « s'offrir » des fonctionnalités externes d'édition avec ce bout de code :

Code :
1
2
3
4
5
6
7
8
9
10
 
var intent = new Intent(Intent.EDIT, 'image/png', getImageDataURI()); 
window.navigator.startActivity(intent, loadEditedImage); 
 
// Cette fonction de callback sera appelée quand l'édition est terminée, 
// Elle reçoit en paramètre l'image traitée 
function loadEditedImage(data) { 
  var image = document.getElementById('image'); 
  setImageData(image, data); 
}
Quand l'utilisateur visitera un service d'édition d'image, le site lui demandera d'autorisation d'opérer sur l'Intent EDIT pour les fichiers de type image/*, en intégrant simplement cette balise

Code :
1
2
3
4
5
 
<intent 
action="http://webintents.org/edit" 
type="image/*" 
/>
Ainsi, quand une action d'édition est amorcée par l'utilisateur, l'application ainsi enregistré propose ses services, potentiellement parmi d'autres applications autorisés.

Quand l'un des services est sélectionné, il s'ouvre dans un autre contexte en emportant les données à éditer.

Une fois la méthode postResult de l'Intent appelée, le service se ferme et les données de sortie qu'il a généré sont renvoyées au client à travers l'évènement de startActivity sus-cité.

Code :
1
2
3
4
5
6
7
8
9
10
11
 
var intent = window.intent; 
memeImg.src = intent.data; 
 
memegenForm.onsubmit = function() { 
  // Transform the image - meme it. 
  addMemeTaglines(memeImg, memeTopText, memeBottomText); 
 
  // Send the generated meme back to the client. 
  intent.postResult(getImageData(memeImg)); 
};


Source : blog de Chromium

Et vous ?

Que pensez-vous de ce concept ?
Croyez-vous qu'il sera adopté par les développeurs d'applications ? Et transformé en standard ?


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


 Poster une réponse

Avatar de tomlev tomlev
http://www.developpez.com
Rédacteur/Modérateur
le 05/08/2011 12:40
Intéressant... faudra voir avec le temps comment ça se développe.

Et effectivement, ça ressemble pas mal au concept d'Intent d'Android...
Avatar de kdmbella kdmbella
http://www.developpez.com
Expert Confirmé Sénior
le 05/08/2011 13:23
j'aurai aimé que ce concept soit implémenté en vue d'un standard pas seulement pour les produits google(Android, Chrome, Chrome os...) ça donne pas envie de ce lancer
Avatar de GCSX_ GCSX_
http://www.developpez.com
Membre expérimenté
le 05/08/2011 22:11
C'est un peu le principe des bibliothèque dynamique, de COM+ et autres équivalents, mais en beaucoup plus synthétique. On n'a besoin de définir que le nom de l'action, ses paramètres et ce qu'on attend en retour (une déclaration de fonction) sauf que là, tout est référencé dans un annuaire global pour permettre à tout un chacun de voir ce qui existe et donc éviter que chacun refasse X versions de quelque-chose qui existe déjà. D'où l'interopérabilité.

Ce concept pourrai facilement être appliqué à n'importe quel langage sur n'importe quelle plateforme.

J'imagine que c'est ce qui finira par arriver, mais il est logique que Google veuille tester et fructifier un peu de son système (sous forme de notoriété pour Chrome et ChomeOS) avant de le partager, bien que ça aille à l'encontre des principe d'OpenSource qu'il prône sans arrêt.

Et évidemment :
On va encore devoir passer par les serveurs google pour traiter nos données ?
Ça commence à être tentaculaire.

Tu as tout à fait raison. Avec ce nouvel annuaire, Google connaitra chaque service proposé par chaque application qui utilise cette API.
Avatar de leoz01 leoz01
http://www.developpez.com
Futur Membre du Club
le 08/08/2011 9:53
Quelques exemples d'utilisation et explications :

http://examples.webintents.org/
http://paul.kinlan.me/web-intents-a-fresh-look
Avatar de benibur benibur
http://www.developpez.com
Invité régulier
le 08/08/2011 15:04
euh, excusez moi mais je ne vois pas en quoi Google sera informé des services qu'on utilise.
C'est le navigateur qui est informé du choix de l'utilisateur d'utiliser tel ou tel service pour une action donnée. Certes pour le moment le navigateur sera Chrome mais clairement cette solution sera reprise pour converger vers un standard que l'on retrouvera dans tous les navigateurs.
D'habitude j'ai tendance à me méfier de Google, mais là je ne vois pas le pb, ai-je tort ?
Avatar de iznogoudmc iznogoudmc
http://www.developpez.com
Membre habitué
le 10/08/2011 9:05
On va encore devoir passer par les serveurs google pour traiter nos données ?
Ça commence à être tentaculaire.

Ben non ! En tous cas pas si c'est géré comme sous Android : une application dit ce dont elle a besoin, et EN LOCAL un mécanisme cherche quelles applications se sont déclarées capables de fournir le service demandé. Tout simplement. Et quand plusieurs sont trouvées, l'utilisateur dit celle qu'il préfère via un menu (dans lequel il peut aussi demander à ce que l'application qu'il a choisie devienne celle par défaut pour cette action).

Simple, élégant, efficace. Finies les usines à gaz à la Office : chaque application ne fait qu'une chose, mais elle le fait au mieux.
Avatar de benibur benibur
http://www.developpez.com
Invité régulier
le 10/08/2011 15:00
Citation Envoyé par iznogoudmc  Voir le message
EN LOCAL un mécanisme cherche quelles applications se sont déclarées capables de fournir le service demandé. [...] chaque application ne fait qu'une chose, mais elle le fait au mieux.

C'est bien ce que j'avais compris.
Par contre, meme si Google ne sera pas informé du choix des services qu'on utilise, je pense que cela risque d'augmenter notre dépossession de nos données puisque cela revient à augmenter la facilité à ce que les services web - pratiques, commodes, pertinents, performant et tout tout, j'en suis d'accord - soient le support exclusif de nos informations.
Plus de facilité = plus d'usages en ligne = plus de dépendances aux services web.
Mais ma remarque ne reste vrai que si l'on considère les business modèles actuels des services web - essentiellement régie plublicitaires ou dépendances aux infra de l'hébergeur dont le service ne peut pas être changé d'hébergeur.
Je suis en train de monter un service qui viserait à redonner la propriété de nos données tout en utilisant des services web.
Je profite d'ailleurs de ce poste pour un appel : je recherche des associés sur mon projet, si ça vous intéresse, faites moi un mp (profils techniques recherchés, domaines = sys admin & techno web, projet sérieux).
A+
Avatar de Gordon Fowler Gordon Fowler
http://www.developpez.com
Expert Confirmé Sénior
le 15/05/2012 11:37
Le projet Webkit soutient à son tour « Web Intent »
L'API universelle d'interopérabilité entre applications Web lancée par Google et Mozilla

Mise à jour du 15/05/12

« Web Intent » est un projet qui veut faciliter les connexions entre applications Web en réduisant le plus possible le nombre de lignes de code nécessaires à ces dialogues. Une API universelle d'interopérabilité entre applications hébergées en quelque sorte (lire ci-avant).

Lancés par un ingénieur de Google sur une idée de la Fondation Mozilla, avec laquelle Google travaille de concert, les « Web Intents » viennent de gagner un nouveau soutien.

Les responsables du projet Webkit, le moteur de rendu de Safari (et de Chrome) ont fait savoir qu’ils étaient particulièrement intéressés et qu’ils soutenaient à présent ce standard.

Une bonne nouvelle, aussi bien pour les développeurs (à qui la balise <Intent> peut faciliter la vie) que pour les utilisateurs (qui bénéficieront d’applications/mash-up plus riches).

Ne reste plus qu’à espérer qu’Opera et Internet Explorer se joignent, eux aussi, au mouvement pour une API d’interopérabilité vraiment universelle.

Source : Webkit Project

Et vous ?

Pensez-vous qu'Opera et Internet Explorer vont se joindre au projet ?
« Web Intent » peut-il vous simplifier la vie ? Ou êtes-vous plutôt septique ?

Et aussi :

Exemples de Web Intents

MAJ de Gordon Fowler
Offres d'emploi IT
Stage fin étude ou 1er CDI _ Ingénieur Etudes et Développement .Net / SharePoint H/F
CDI
Ineat Conseil - Ile de France - Boulogne-Billancourt (92100)
Parue le 10/10/2014
Comptable de copropriété (H/F)
CDI
Grey Consulting - Ile de France - Paris - 8ème arrondissement
Parue le 15/10/2014
Consultant(e) stagiaire .NET (H/F)
CDI
Avanade - Ile de France - Châtillon (92320)
Parue le 08/10/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula