Every Android developer should be paying attention to Ice Cream Sandwich, or ICS (a.k.a. Android 4.0). Unlike Honeycomb (Android 3.x), which was doomed to only run on tablets, you’ll be seeing ICS on all manner of devices on the near future.
In the not-so-distant past developers could relegate the new features and design principles to future “tablet” development, as the Honeycomb OS was strictly for tablets. However, ICS brings Android back to a single “latest version”,appropriate for both phones and tablets.
This means that all of the new features that Google has been trying to push are no longer novelties. Things such as fragments and the action bar were neat when they were introduced, but the time is approaching when your apps will look antiquated if they don’t use these features.
Now, just to clarify, the recently released Nook Tablet and Kindle Fire devices both run Android 2.3.4 and many of us don’t expect these devices to be updated to Android 4.x very soon. Why not? Both platforms are very customized, and the ICS features may actually conflict with this user experience.
Problems when Android Developers ignore Ice Cream Sandwich
If you haven’t looked at Google’s new Android Design site yet, you should. It’s packed with design elements that Android apps should use, and some of the recommendations are very different from previous Android versions.
In short, Google is aiming for a user experience that is distinct from other platforms, and they intend for it to look very stunning. That requires breaking with some of the prior Android design principles, which means developers need to take note, and make changes.
It’s not an overnight thing, but over time apps that don’t conform to the current design standards will begin to look dated, clunky, and to some it won’t even look like they were designed for Android. Don’t let your app fall victim to this.
Additionally, there are rumors that Google will at some point begin to filter search results to not show apps that were designed for Honeycomb but not updated for Ice Cream Sandwich.
And of course, you don’t want to leave ICS-related bugs unfixed.
Testing your apps on Ice Cream Sandwich
As a welcome surprise, my WiFi Xoom (from Motorola) recently received the ICS update. This is a great opportunity to test on the real device (as opposed to the emulator).
However, it took me mere minutes to find a bug with one of my apps. This is reminiscent of the first time I tested my apps on this very same device, and found a network-related bug.
Sigh. At least I now know, and it really wasn’t hard to fix. Hopefully I’ll get the update finished before too many ICS users find the bug.
So even though ICS should be a better and more stable Android, you’ll still need to test code that used to be rock-solid to find out how it performs on Ice Cream Sandwich. I strongly suggest getting a real device to run it. Even if you don’t have an officially supported device, you can get an enthusiast-built ROM and test on an old phone or tablet (you can find inexpensive phones on eBay).
Note that the emulator can indeed run ICS for you, but it’s slow. The Google team also recommends that you give the AVD at least 1GB of memory, which can cause problems for developers on more modest development machines. If you can make it happen, a real test device is the way to go.
“When will I get ICS on my Android phone?”
This question has been bouncing around since Google announced the upcoming release of their latest OS. Unless you have a Google Galaxy Nexus phone, you likely need to wait. Why?
First, the hardware manufacturers need to make their updates. Motorola indicated that they would need 6 weeks to do their part after the source code went live (which happened in mid-November 2011). For my Xoom, it took just over 8 weeks, which is understandable (they did beta testing for a week or two with select users).
Next, however, the carriers need to make their modifications. If I had a network tablet like the Samsung Galaxy Tab 4G, I likely would have to wait longer as Verizon made their changes. All carriers do testing and make modifications, which can delay things significantly.
Much to the chagrin of most users, these two players seem to stall these updates. They do, after all, prefer that you buy new phones and devices.
OK, so what does this mean to you, as a developer?
It means you have a little more time. Only 0.6% of devices were running ICS as of a few weeks ago. Don’t let that trick you in to becoming complacent! Before you know it, you’ll find a swell of users on this new version of Android, and if your apps aren’t compatible, it won’t be good for you!
Keeping Your Android Apps Competitive
That’s what this is all about – staying competitive. If you avoided spending time and money getting your apps up to date for Honeycomb, don’t expect things to work out as well if you do the same now.
Over half of Android devices are running the latest version of Gingerbread, the latest version of Android available for phones. While Honeycomb numbers primarily came from new tablets, we’ll see ICS numbers increase from new tablet sales, phone updates, and new phone. The last one is likely to be a big factor. I believe that phone turnover is much higher than tablet turnover – phone upgrades are very popular.
Hopefully, at this point, you’ve decided that Ice Cream Sandwich is something that should be on your radar as an Android developer.