HTML5 and WebKit Pave the Way for Mobile Web Apps
Google mobile team started thinking about how they could bring the benefits of the server-side approach to the clients.
According to Google Code blog, mobile team started thinking about how they could bring the benefits of the server-side approach to the clients. They started thinking about a world where they could deliver a GUI specified in XML to a Java ME client, enabling them to iterate on the server side and deliver new features that could delight users when they were ready, rather than on a lengthy release cycle.
Not too long after, the team first saw the new Android browser. Still in its early stages, the Android browser was built on the latest version of WebKit and could render desktop pages with ease. The XHTML, images, JavaScript, and CSS that could be rendered on this platform presented great potential for building very high-end web applications. However, this was ages before Android was due to ship and Android would only be one of many mobile platforms.
They were very excited about the evolving HTML5 standard because it enables mobile and desktop website designers to deliver the advantages of client-side and server side development to their users simultaneously! New APIs let web applications start offline and store data on the client. The canvas API lets you draw complex user interfaces, or you can use advanced CSS tricks to get the browser to render a rich UI.
In addition, the W3C Geolocation API is being adopted and implemented by browser developers, enabling entire new categories of web applications to be built. The benefits are clear: you can develop fantastic new applications, benefit from server-side analytics and iteration to deliver features that your users want, and know that offline functionality keeps things running as the user moves in and out of coverage. Your users can enjoy fast, capable web apps that they can access from any device, without the need to copy their data from place to place or worry about installing software or being online.
They decided to build new versions of mobile Gmail and mobile Calendar on top of this functionality. First, they built a small javascript wrapper around the database functionality in HTML5 and Gears. This wrapper abstracts away the differences between the two APIs, so that their applications are supported on the broadest set of browsers possible while older browsers get updated with implementations of the new offline APIs.
The team noticed that they weren't the only ones thinking about this: a quick search shows that other developers saw the similarities too. The main difference between the Gears database API and the HTML5 database API is that the Gears API is synchronous, requiring separate worker threads to do the database calls, while the HTML5 database API uses callbacks and is asynchronous. With the wrapper built, they knew their code would run on all high-end mobile browsers today, and look forward to even more distribution as everybody implements HTML5.
Comments
Be the first to write a comment
You must me logged in to write a comment.