It's the open-sourced nature of Android that has enabled it to proliferate so widely, but it's the touch-friendly interface that has had it so eagerly embraced by so many.
This has enabled anyone that wanted, to direct their intellectual powers to porting Android to any device they want.
This has lead to disgruntled owners of Android devices that have waited a few months too long for OS updates to create their own updated builds.
Owners of devices with outdated or dead operating systems – such as Windows Mobile – have devised builds of Android of their own.
While people who just fancy the damn challenge have done it for perfectly functioning devices, such as the iPhone 3G.
For this example we've picked the HP TouchPad, there was a lot of noise about this in mid-2011. HP announced it was dumping its WebOS division and there was a fire sale on its only tablet the HP TouchPad.
This runs WebOS, which, while in itself is a fine OS, has very limited third-party app support. With the death knell sounded for WebOS the challenge was on to create a working build of Android.
The renowned hacker group, CyanogenMod took up the challenge and delivered a working alpha in a month.
So how do you go about replacing the OS on a device? It's just like replacing an OS on a standard PC but with the added complications of gaining the right access to the original OS; having the tools to inject a replacement boot-loader; and having access to a replacement OS with the correct drivers in place. Sounds tricky, doesn't it?
Thankfully the internet is a vast and varied place, inhabited by helpful and intelligent types. Sites like http://xda-developers.com and http://rootzwiki.com host communities of avid Android fans, dedicated to creating builds of Androids for specific devices. These gals and guys have created an armoury of tools that people can easily reuse for a host of devices.
Missing a pillar
Three basic pillars are required: a copy of the target OS for the device; a system to inject this onto the device; and a boot-loader to kick start the device with the new OS.
The injection stage is interesting as it usually hijacks the manufacturer's built-in firmware upgrade or recovery process. Most devices provide a low-level recovery mode that involves holding down a combination of hard buttons as it's turned on.
With the HP TouchPad this is the Volume Up button. For other devices, such as the iPhone this is initiated via the software itself.
Beyond that initial process, of course, a build of Android is required, ideally but not necessarily with all the device drivers in place. As with Windows, lacking a driver doesn't necessarily break a device but renders that part – be it the GPS, Wi-Fi or audio for example – useless or in other cases semi-functioning or often functioning but lacking power-saving features. If you jump onboard a part-done build you'll often find such issues.
Last, the boot-loader kicks the whole thing off. For some devices, usually those that cannot be flashed, this is a one-time process that has to be rerun each boot. The HP TouchPad gets the best of all worlds as it can be partitioned and have a multi-OS boot-loader installed called Moboot.
You won a brick
Do be aware there is a chance of bricking your device. We strongly advise backing up your data and any files on it. It's well worth fully charging the device beforehand and leaving it plugged in as well.
Once the 'upgrade' is initiated don't interrupt it, even if nothing seems to be happening. Once Android is in place there can be issues with Android Market and it will often need installing separately, but we cover that below.
On some devices it may also block many apps as the device isn't correctly recognised. This can often be fixed by clearing and force stopping the Google Services Framework and then the Market via application settings.
Beyond this there's a world of Android enjoyment to be had. The Android 4.0 source code has been released too, so we're expecting a slow update for many devices to the tasty Ice Cream Sandwich.
Disclaimer: Future Publishing Limited provides the information for this project in good faith and makes no representations as to its completeness or accuracy. Individuals carrying out the instructions in this project do so at their own risk.