With yesterday's announcement of Android 4.0 Ice Cream Sandwich, one of the big questions in the back of everyone's mind is "Will it work on my phone?"
Great question... but the answer may be a little complex.
(To address the picture above: no, chances are Ice Cream Sandwich isn't going to run on your G1... but if you get it to work, please send us a video proving otherwise!)
Like we've said in previous articles, Google's Gabe Cohen says Ice Cream Sandwich, the latest version of Android, "theoretically should work for any 2.3 device". That puts the ball squarely in the hands of phone makers and custom ROM developers. Whether or not they get a build together or not will probably be more a political decision than a technical one.
So, let's talk about technical capabilities.
The hardware Ice Cream Sandwich runs on compared to what Gingerbread runs on is a little different. How is ICS going to work on "older" hardware? To answer that, let's look at a couple of the more notable differences.
Hardware Graphics Acceleration
Not all phones that run Gingerbread include full Hardware Graphic Acceleration. That's okay, the new version of the Android SDK takes care of all that, so developers that want their apps to to take advantage of the added acceleration in ICS simply need to target the new framework. Phones without the super-fancy hardware should still run the apps, just not as fast as they could have if they were using ICS's hardware accelerated code.
Buttonless User Interface
Android-powered smartphones have always had four buttons: home, menu, back, and search (albeit not always in that order). Sometimes the buttons were physical, sometimes capacitive, but always there, and always four.
With the Galaxy Nexus, gone are the physical buttons. Like Honeycomb-powered tablets, the "physical" buttons have been replaced with "virtual" buttons that can be lit up, turned off, changed, hidden, or even relocated to accommodate the orientation of the phone. (I remember when Apple learned the same lesson and changed the "dock" from a non-back-lit, stationary area of the touch-screen to a "floating" dock that was back-lit, able to be customized, and changed location when you rotated your Newton Messagepad 2000. But I digress.)
I suspect older phones will simply add the new "soft button bar" to the bottom of the display, above (or to the side of) the old "physical" buttons. The "old" buttons will continue to work just as they have in the past, they just might be a little redundant.
Zero Shutter-Lag Camera
One of the cool features of the Galaxy Nexus is the new camera app with "zero shutter-lag" — you can take pictures as fast as you can press the "shutter" button. Will your older phone be able to do that? Possibly. The camera is made up of two parts, the app itself, and the physical camera hardware. The app will certainly be capable of snapping pictures as fast as you want. Whether or not the physical hardware will be able to keep up remains to be seen, and will likely vary from one smartphone to another.
Facial-Recognition Screen Unlocker
Again, we don't know for sure, but if your current phone has a front-facing camera, chances are that the new facial-recognition screen-unlocker will work on your phone, too.
Barometer and NFC
I'm running the same version of Android on my T-Mobile G2 (without NFC) as the Nexus S (the first Android-powered phone with NFC built-in). Android runs great, I just don't have any NFC capabilities because I don't have the NFC hardware.
Similarly, ICS should run fine on phones without barometers, they just won't be able to get any barometric pressure readings.
ICS is designed specifically for a 16:9, 1280×720 (or 9:16 720X1280, if you prefer) screen. No other Android smartphones have that resolution.
However, not all Android's have the same resolution today, so Google probably thought through the issue of screen size, and the new user-interface elements will probably adapt to your screen's dimensions with little complication.
That should help answer some of your questions regarding the possible differences between ICS running on "old" versus "new" phones.
Did we cover your questions? Did we miss something? If you've got additional questions or want to add your own insight to the conversation, let your voice be heard in the comments below!