Transcript of "Palm WebOS Overview"

1.
Palm WebOS An Introduction Gorkey Vemulapalli

2.
What is WebOS? <ul><li>Palm's next generation operating system </li></ul><ul><li>Designed around an incredibly fast and beautiful user experience and optimized for the multi-tasking user </li></ul><ul><li>Integrates the power of a window-based operating system with the simplicity of a browser </li></ul>

3.
What is WebOS? <ul><li>Embedded Linux operating system that hosts a custom User Interface (UI) System Manager built on standard browser technology </li></ul><ul><li>System Manager provides a full range of system user interface features </li></ul><ul><li>Navigation, application launching and lifecycle management, event management and notifications </li></ul><ul><li>System status, local and web searches, and rendering application HTML/CSS/JavaScript code </li></ul>

4.
Application Development <ul><li>Applications are built using standard web technologies and languages </li></ul><ul><li>Have access to device-based services and data </li></ul><ul><li>Think of webOS applications as native applications, but built from the same standard HTML, CSS and JavaScript </li></ul>

6.
Application Development (Contd..) <ul><li>WebOS is designed around multi-tasking </li></ul><ul><li>Utterly simple to run background applications, to switch between applications in a single step, and to easily handle interruptions and events without losing context </li></ul><ul><li>Build with typical design and implementation practices for Ajax applications </li></ul>

10.
User Interface (Navigation) <ul><li>Navigation is based upon a few simple gestures with optional extensions </li></ul><ul><li>tap (act on the indicated object). Like open function </li></ul><ul><li>back (the inverse of open) . reverses a view transition, as going from a child view to a parent view. </li></ul><ul><li>scroll - flick and quick drags are used to scroll through lists and other views </li></ul><ul><li>In addition you can use pan, zoom, drag & drop, switch applications, switch views, search, filter lists and launch applications </li></ul>

12.
User Interface (Activity) <ul><li>You work on one activity at a time within multiple applications </li></ul><ul><li>Eg. draft email has its own card separate from the email inbox card </li></ul><ul><li>You can have as many draft emails, each in their own card, as you need; each is considered a separate activity and independently accessible </li></ul>

14.
Mojo Application Framework <ul><li>A webOS application is similar to a web application based on standard HTML, CSS, and JavaScript, but the application lifecycle is different. </li></ul><ul><li>The webOS APIs are delivered as a JavaScript framework, called Mojo </li></ul><ul><li>To build full-featured webOS applications, many developers will also leverage HTML5 features such as video/audio tagging and database functions </li></ul><ul><li>Prototype JavaScript framework is bundled with Mojo to assist with registering for events and DOM handling </li></ul>

17.
Application Lifecycle <ul><li>Single scene apps, such as a Calculator, which the user can launch, interact with and then set aside or close </li></ul><ul><li>Headless apps, such as traffic alert application that only prompts with notifications </li></ul><ul><li>Connected apps like a social-networking app, which provides a card for interactionor viewing and a dashboard giving status </li></ul><ul><li>Complex multi-stage apps like Email, which can have an Inbox card, one or more compose cards, along with a dashboard showing email status </li></ul>

19.
Storage & Services <ul><li>Supports the HTML5 database functions directly and provides high-level functions to support simple (CRUD) operations </li></ul><ul><li>Through Mojo Depot functions, you can create a local database and add, delete or retrieve records individually or as a set </li></ul><ul><li>A service is an on-device server for any resource, data, or configuration that is exposed through the framework for use within an application </li></ul><ul><li>Services are called through a single controller function, serviceRequest request passes a JSON object specific to the called service and specifying callbacks for success and failure of the service request. </li></ul>

20.
Palm webOS Architecture <ul><li>Based on the Linux 2.6 kernel, with a combination of open source and Palm components providing user space services, referred to as the Core OS </li></ul><ul><li>You won't have any direct interaction with the Core OS, nor will the end users </li></ul><ul><li>Access is through Mojo and the various services </li></ul>