One of the biggest problems facing HTML5 development for mobile devices is the ability to tie the software to the hardware. It is a daunting task that has proved slow going by developers trying to figure out how it can be done. The fundamental problem is this: How do you tie a mobile browser to a device’s hardware to turn it into a functional operating system? Solve that issue, though, and you break the stranglehold that a phone's OS has on many of its operations - and open your device up to a world of useful possibilities that aren't necessarily defined by Apple or Google.
There are many fine engineers working on this basic but complicated problem. The closest to solving it comes from an open source project, spearheaded by Mozilla.
HTML5-based mobile operating system is called Boot 2 Gecko (B2G), which was unveiled as an open source project near the end of 2011. The promise behind B2G is that is will create a mobile OS that can be a platform for mobile Web apps that function just like their native counterparts on iOS and Android but are based on browser technologies. More so than any other HTML5 initiative, such as creating apps that function across platforms, the ability to be the platform and the hardware is one of the most significant development projects that developers are working on right now.Mozilla’s quest to create an
Since unveiling its roadmap, Mozilla has made significant progress. The pertinent piece in tying HTML5 to device hardware is called WebAPIs. It is aptly named: The goal is to take application programming interfaces (APIs) that have the ability to connect data from one point to functions at another point and tie them to the Web through a browser.
In this scenario, the browser becomes the platform. It needs to be able to interact with the hardware on a mobile device that controls a variety of simple functions including the telephone, vibration, accelerometer, power management, Wi-Fi, device storage, contacts, camera, NFC, BlueTooth, push notifications and more.
The ability to perform these basic functions through a mobile browser is still very much a work in progress. But developer Paul Rouget already has a working demo of WebAPIs in action. In a video post earlier this week, he showed off such fundamental capabilities including the use of an accelerometer, GPS, proximity sensors and power management.
The smartphone in that video is likely an HTC One X, the high-end Android phone running Ice Cream Sandwich, Android's most recent iteration of its OS. Mozilla is working on two different ways of tying HTML5 to device hardware. Yes, it is trying to create a mobile operating system with B2G, but it is also working through its mobile browser, Firefox for Android (dubbed Fennec), to create a HTML5-based browser platform within Google’s smartphone OS. Almost all of the WebAPIs being developed are developed for Fennec on Android alone as well as in concert with B2G. Take a look at the documentation page for WebAPIs to see the progress of the project. Note that in the progress section, most WebAPIs are documented for both Android and B2G. (Because Mozilla doesn't have a browser under iOS, employing this approach for the iPhone will be much trickier, and likely well off in the future; expect this approach to be Android-only for some time.)
What does Mozilla hope to accomplish by creating WebAPIs for its Firefox browser in Android? Foremost, the more powerful Firefox for Android is, the easier it will be for Mozilla to deploy dynamic Web apps quickly to a wider array of smartphone users. Boot 2 Gecko is a smart idea, and it is beginning to take shape, but it is still likely more than a year from actually coming to market with a real device. Mozilla is planning on a Web app store to deploy applications both through its desktop and mobile browsers. The mobile browser, which has its largest user base on Android, needs to be able to properly run those apps.
Mozilla's idea is intriguing. On Android, it can become a platform within a platform. Instead of using the native Android browser or Google Chrome Beta, users will be able to download apps through Mozilla’s application store instead of Google Play. It is not exactly the “end-run around the app store” technique that many hope will be the future of HTML5 mobile Web apps, but the ability to create an app ecosystem that resides right next to the native app store would be a decent first step.
How exciting are Mozilla’s efforts on creating an HTML5 mobile operating system? With the presumed death of webOS and its Enyo-based application framework, has the hope of developers in creating a true browser-based OS on mobile passed to Mozilla? Let us know what you think.