27.02.2014 Aufrufe

PC Magazin Classic XXL Geheime Tools von Microsoft (Vorschau)

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

122<br />

IT ProfessIonal<br />

Web-Programmierung<br />

Beispiel 2: Bild auswählen und anzeigen<br />

Eine anspruchsvolle Anwendung<br />

leicht umgesetzt: Der Nutzer kann ein<br />

Bild <strong>von</strong> einem anderen Web-Dienst<br />

auswählen, das dann in der aktuellen<br />

App angezeigt wird. Basis ist wie beim<br />

Beispiel 1 ein offizielles Beispiel der<br />

Web-Intents-Entwickler (http://examples.webintents.org/intents/pick/index.<br />

html). Das folgende Listing finden Sie<br />

auf der Heft-DVD.<br />

<br />

Web Intents, Beispiel 2<br />

<br />

<br />

<br />

attachEventListener(window, “load”, function() {<br />

var pickImage = document.getElementById(“pickImage”);<br />

attachEventListener(pickImage, “click”, function() {<br />

var intent = new Intent(<br />

“http://webintents.org/pick”,<br />

“image/*”);<br />

window.navigator.startActivity(intent, intentResponse);<br />

return false; });<br />

var intentResponse = function (intentData) {<br />

var output = document.getElementById(“output”);<br />

output.src = intentData.data;<br />

focus(); }; }, false);<br />

<br />

<br />

Web Intents, Beispiel 2<br />

<br />

Bild <strong>von</strong> einem Cloud-Dienst ausw&auml;hlen und anzeigen.<br />

Bild ausw&auml;hlen!<br />

Hier erscheint das gew&auml;hlte Bild:<br />

<br />

Die süße<br />

Miezekatze<br />

kommt<br />

vom einem<br />

anderen<br />

Web-Dienst.<br />

Service(s) aufrufen<br />

Web-Applikationen fragen eine Aktion mit<br />

vorgegebenen Parametern ab, woraufhin die<br />

Web-Intents-API den bzw. die passenden<br />

Service(s) zur Verfügung stellt. Ein Beispiel:<br />

var intent = new Intent(„http://<br />

webintents.org/share“, „text/uri-list“,<br />

„http://www.pc-magazin.de“);<br />

window.navigator.startActivity(intent);<br />

Der Variablen intent wird in diesem Fall die<br />

Website-URL des <strong>PC</strong> <strong>Magazin</strong>s zugewiesen.<br />

Der type (zweiter Parameter) wird als Text/<br />

Webadresse definiert, und mit share (erster<br />

Parameter) wird die Aktion zum Teilen des<br />

Links angesprochen. Die zweite Code-Zeile<br />

startet schließlich die Ausführung des Codes.<br />

Das vollständige Beispiel finden Sie im Kasten<br />

„Beispiel 1“ auf der vorigen Seite sowie<br />

auf der Heft-DVD – gemeinsam mit dem zweiten<br />

Beispiel aus diesem Artikel.<br />

Nutzbare Intents<br />

Die Web-Intents-Entwickler stellen eine Reihe<br />

<strong>von</strong> Standard-Funktionen für den Datenaustausch<br />

bereit. Das System erlaubt es aber<br />

auch, eigene Intents zu definieren. Für die<br />

meisten Entwickler sollten die Standard-Intents<br />

anfangs ausreichend sein:<br />

discover: Identifizieren <strong>von</strong> externen APIs und<br />

Services.<br />

share: Teilen <strong>von</strong> Daten zwischen Web-Services<br />

bzw. Apps.<br />

edit und view: Daten aus einem Service editieren<br />

und mit einer anderen Applikation betrachten.<br />

pick: Abrufen <strong>von</strong> Daten aus einer Web-App,<br />

um sie in der eigenen Anwendung zu nutzen.<br />

subscribe: Daten einer Web-Anwendung<br />

„abonnieren“.<br />

save: Speichert Daten innerhalb einer Applikation.<br />

Service registrieren<br />

Anbieter <strong>von</strong> Web-Services registrieren ihre<br />

Anwendungen nach einem recht einfachen<br />

Schema. Sie legen fest, welche Funktionalitäten<br />

angeboten werden und was mit den<br />

<strong>von</strong> der Web-Applikation empfangenen Daten<br />

geschehen soll. Der dazugehörige Code sieht<br />

so aus:<br />

<br />

Der Parameter action wird zwingend benötigt.<br />

Ein Verb – der so genannte Intent – beschreibt<br />

die angeforderte bzw. auszuführende<br />

Aktion. Mögliche Angaben sind discover,<br />

share, edit, view, pick, subscribe und save.<br />

Zur Bedeutung der einzelnen Intents lesen<br />

Sie bitte den Abschnitt „Nutzbare Intents“.<br />

Der Parameter type ist optional und erlaubt<br />

die Filterung <strong>von</strong> Daten. Und auch der Parameter<br />

href ist optional: Wenn eine URL<br />

angegeben wird, zeigt sie auf die auszuführende<br />

Aktion, sobald ein Nutzer den Service<br />

auswählt. Wenn keine href-Angabe erfolgt,<br />

wird die aktuelle Webseite verwendet. Hier<br />

nun ein vollständiges Beispiel für eine Service-Registrierung:<br />

<br />

Dieser Code registriert einen Dienst, mit dem<br />

Bilder geteilt werden können. Wählt der Nutzer<br />

den Service aus, erfolgt eine Weiterleitung<br />

auf die Seite „share.html“.<br />

Weitere Infos<br />

Auf der offiziellen Website www.webintents.<br />

org finden Sie eine kurze Dokumentation<br />

sowie weitere Beispiele für mögliche Web-<br />

Intents-Anwendungen. Die FAQ beantworten<br />

die häufigsten Fragen zur neuen Technologie<br />

und ihren Einsatzmöglichkeiten. Web-<br />

Intents-Erfinder Paul Kinlan bietet unter<br />

www.webintents.com eine „20-Sekunden-<br />

Anleitung“ für Entwickler. James Hawkins,<br />

Software-Ingenieur bei Google, liefert im<br />

Chromium-Blog ein interessantes Beispiel<br />

für Web Intents: http://blog.chromium.<br />

org/2011/08/connecting-web-apps-withweb-intents.html.<br />

Auf seiner eigenen Entwickler-Website<br />

vermittelt Paul Kinlan einen<br />

umfassenden Überblick zu Web Intents:<br />

http://paul.kinlan.me.<br />

whs<br />

<strong>PC</strong> <strong>Magazin</strong> 1/2012 www.pc-magazin.de

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!