Background and Comparison to iOS Jailbreaking
After a couple years having had no experience with an Android phone of any variety, a generous Twitter follower I had met donated two older Android phones, an original Motorola Droid (running Froyo 2.2.2) and an LG Ally (also running 2.2.2), so I could learn the Android UI and work on porting a couple of my iOS apps.
One unfortunate reality of the Android ecosystem is that phones are often abandoned by their manufacturers after only a year (or less time), and even if not, they are not kept up to date past one or two minor Android OS releases. For instance, both the Ally and Droid are more than capable of running Android 2.3 Gingerbread (and I'm now running 2.3.7 on the Droid, faster than 2.2.x ever ran), but Motorola has ended support for the device.
Contrast this with the iOS platform; the same-age iPhone 3GS is still for sale by Apple, and it runs iOS 5.x (the latest OS) fast (I still have a 3GS to play with, in addition to my 4S and my wife's 4), and received the OS upgrade the day it came out. Additionally, jailbreaking iOS is trivial compared to trying to figure out how to root, then get a ROM and install it, for an Android phone of most varieties. All but the most expensive Android phone models are dependent on generous souls to do the work of adapting a ROM to the phone.
Since all I could find for Android rooting were a bunch of blog posts and forum topics that had scattered information, I thought I'd compile my experiences rooting and upgrading two Android phones.
Finding a ROM for Gingerbread/etc.
Unfortunately, this is the most difficult part for many Android phones. Lucky for me and my Droid, Peter Alfonso creates regular 'Bugless Beast' Gingerbread ROMs for the Droid, and posts them on his website. Here's the link to 2.3.7 of Bugless Beast.
For the LG Ally, since it's a more entry-level phone, and must not've been as popular as the Droid, ROMs are few and far between. I thought I had found a good ROM here, but it seems I was mistaken — the ROM didn't boot :(
Upgrading the Droid OG
The first step in getting 2.3.x on the Droid is to 'root' your phone. The simplest way of doing this is to use a one-click rooting application, of which there are a variety. The only one I found to work on both phones, though, was GingerBreak (download GingerBreak from this page) (v1.20). Open that app and tap the 'root my phone' option.
The second step is re-flashing your phone's ROM. Here's how to do that:
- Install ROM Manager (free or paid version) from the Android Market.
- Open ROM Manager and flash your phone using Clockwork recovery. (Note: You may need to keep doing this over and over if you get an error, until it downloads and flashes all the way).
- Copy the .zip file you downloaded with the appropriate ROM file to the your phone's Micro SD card.
- Use ROM Manager to install the zip file from your SD card.
- Wait a while while the upgrade completes... and then after your phone restarts, enjoy running a newer OS!
Upgrading the LG Ally
The Ally should be about the same, but, unfortunately, I still cannot find a 2.3.x ROM for the Ally.