The Android mobile platform has a lot going for it. It has a large mind share thanks in part to its huge backer, Google. Android also has something that Apple’s iPhone platform lacks: Diversity in devices and vendors.
The Open Handset Alliance which backs the Android platform consists of 65 members from various parts of the mobile industry such as handset manufacturers such as HTC, Sony and Toshiba along with semiconductor companies such as Intel and Nvidia to software providers such as Google and eBay to mobile network providers such as NTT Docomo and Verizon.
The members’ diverse backgrounds, business models and needs ensures a healthy mix of devices, services and software for the platform. Although a healthy diverse mix of devices and implementations is healthy, it can also lead to problems such as fragmentation.
Fragmentation can occur when different implementations have different core feature set and different user experiences. With the iPhone platform, once you’ve used an iPhone you know that all of the iPhone devices will behave the same and run the same applications and have a similar user experience. With Android however, you can get radically different experiences based on handset being used as well as the Android version being used.
Some handset vendors have implemented their own UI customizations such as Mototola’s Blur and HTC’s Sense which alter the user experience even more and can prevent or delay uptake of new operating system revisions as they are released. Depending on the customizations, developers must also consider how their applications might work in each of these customized environments. As any web developer knows, having to support multiple browsers is not a fun tasks. Supporting multiple slightly differing mobile platforms isn’t considered fun either. Worrying how you application will look or run at 10 different possible resolutions is much more of a pain than iPhone’s 1 resolution fits all model.
As users may be stuck waiting to a handset vendor to provide OS upgrades, they may be unable to install of use some applications. For example, the recent release of Google Earth will only run on Android 2.1 or later which most Android handsets are not yet running.
Google has started trying to address the fragmentation issue. One of the approaches is to decouple upgrade of major applications and components from the Operating System. By being able to upgrade major components independently, users could simply download the latest and greatest without having to wait for their slow vendor to provide upgrades. Being able to easily upgrade the browser or the input functionality could reduce the number of people running different feature sets and different levels of code. If you can run all of the latest applications and code, do you really care if you are on the latest OS or not?
Google has also stated that development and releases of the core Android OS will most likely slow down soon as the platform has matured and there will be more focus on applications and features built upon the more stable core.
Hopefully Android users will be able to get the best of both worlds, a diverse set of handsets, applications that will run on all devices and not have to wonder if they are betting on the right handset vendor.