ICS On Samsung Galaxy S

Ice Cream Sandwich On Samsung Galaxy S

The phone is now well over a year old and has been good to me. Sometime earlier this year I managed to dead boot it (a condition where you wind up corrupting the bootloader itself) and it had to be revived with a JTAG pinout. I was running a rooted and lag-fixed stock Gingerbread ROM on it for a long time and was quite satisfied with it. The primary reason why I love this phone has been how abuse-friendly it has been so far. I tend to drop my phones and carry them around without any screen guards or cases. This one has been dipped in water once, keeps falling on the ground at regular intervals and is not treated with a great deal of gentleness. To survive all that and to still keep going gets my loyalty any given day.
By 2.3.4 itself I had decided to hold off until Samsung releases (or leaks) a build of Ice Cream Sandwich (ICS) for the phone before I do any more experiments with the new ROMs. Over time, I have come to dislike most of the heavily modified ROMs and it also tends to be a bottomless pit, you keep trying one after the other and waste a lot of time on it. When Google announced the release of ICS to the developer community, I was expecting a wait of a few months before a stable enough build was out for the SGS. But, things have changed a lot on Samsung’s end since I bought the phone over a year ago, when it was on Froyo and took forever to get a stable, non-leaked official Gingerbread build out.
Early in November Onecosmic on XDA Forums had released a build from AOSP codebase. I tried the beta2 release and found it to be quite stable, but the battery life was the worst I have ever had on a mobile device. It would not last more than 10-hours if I was lucky and it meant that I had to carry around my old Nokia E71 as a backup phone. But things changed dramatically when Teamhacksung released an AOSP build of their own late November. The first build I tried was build5, which was a vast improvement in battery life over the Onecosmic build. Build6 was the best I have ever had on their releases with the phone being at its fastest best. I am running build7 at the moment, but it has not been as snappy as build6. There are a few things that don’t work well (video recording, front-facing camera), but it is very stable and “force close” is not that rampant and I can now easily go a full 24-hour day of normal usage with 12% battery left on the device.
I have tweaked a few things to get that kind of life.

  1. Force GPU rendering: Off
  2. Window animation scale: Off
  3. Transition animation scale: Off
  4. Email service: Disabled
  5. Exchange services: Disabled
  6. Google Plus: Disabled
  7. 2G networks only
Other than the excellent stability, the perceptible change in ICS is cosmetic. The UI has been made a lot more consistent and less nerdy, which should catch the attention of the market segment who have been used to the simplicity and smoothness of iOS, but it is not a real competition to iOS yet. It may also be a possibility that Google will decide to take Android in a different direction from iOS. The hints of it are there in the ICS interface (even though it also has enough ‘inspiration’ from iOS) in terms of button placements and other visual elements, but I think is a release that aims to set right the UI wrongs in Gingerbread, making it an evolutionary release. We may see the actual direction the OS may head in by the time Android 5 comes out.
This build is also the first instance of me having spent an extended period of time on the AOSP build. The handset manufacturer OS is almost always laden with a lot of extra apps and services they carry on deck. It is nice to be able to live in an environment that does not have any of that. At the same time, they too need to make whatever money they can out of these devices, so you can’t blame them a lot for it, which is where the freedom (not openness) of having Android phones that allow you to throw out all the official firmware and start on something like this becomes invaluable.
Build 8 Update Highlights (12-12-2011): 
  1. Turned back on Window animation and Transition animation.
  2. Email and Exchange services are still disabled.
  3. First run after new update was awful, got barely 10-hours of battery life.
  4. Changed modem to JP5 and battery life is back to normal. 11-hours on 55% battery, Wifi on all the time, more than 2-hours already on phone calls.
  5. Trying out the Thunderbolt scripts, even though the jury is divided whether they work or not. It seems a lot smoother for me.
Never mind.