Changes

Jump to: navigation, search

WebAPI/WebActivities

1,981 bytes added, 17:53, 30 May 2012
Some examples
bool isActivityHandlerRegistered(ActivityHandler handler);
};
 
== Examples ==
The ''data'' structure used in those the activities used in those examples shouldn't be considered as near to anything final. It is just a snapshot on how it could look like. Those examples goal is to underline the use of the API.
=== Launch an activity ===
View a png image:
var a = new Activity({ name: "view", data: { type: "image/png", url: ... }});
a.onerror = function() { alert("Can't view the image!"); };
 
Pick an image:
var a = new Activity({ name: "pick", data: { type: "image/png", multiple: false }});
a.onsuccess = function() { var image = a.result; doSomethingWithImage(image); });
a.onsuccess = function() { alert("Failure when trying to pick an image!"); });
 
=== Register to handle an activity ===
View a png image:
var r = navigator.registerActivityHandler({ name: "view", disposition: "inline",
filters: { type: "image/png" }});
r.onerror = function() { alert("failed to register activity"); }
 
View a png/gif image in another page than the current one:
navigator.registerActivityHandler({ name: "view", href: "image-viewer.html", disposition: "inline",
filters: { type: ["image/png", "image/gif"] }});
 
View only HTML pages from example.org:
navigator.registerActivityHandler({ name: "view", filters: { url: /https?:\/\/example.org\/.*/ }});
 
=== Handle an activity request ===
View a png image:
navigator.setMessageHandler('activity', function(a) {
// We can't be handling an activity that isn't what we asked, because of |filters|.
var i = getImageObject();
i.src = a.source.url;
// We do not call a.postResult() or a.postError() because this activity shouldn't return a value.
});
 
Pick an image:
navigator.setMessageHandler('activity', function(a) {
var image = getImageToReturn();
if (!image) {
a.postError("NoImage");
return;
}
a.postResult({ type: "image/png", url: image });
});
Confirm
368
edits

Navigation menu