This is a follow-up to a post I did last year, “Does Android “fragmentation” actually affect end users?”
Unfortunately, tech news sites keep referring to this Android “fragmentation” problem in the same tired old ways. Here are some recent takes on it:
Has Google Done Enough to Keep Android Phones Up-to-date?
Google: Android fragmentation ‘up to manufacturers’
The Android era: From G1 to Jelly Bean
Android 4.1 Jelly Bean: Can it Solve Android’s Fragmentation Problem?
Newest Android Operating System Insufficient for Developers, Fragmentation Top Priority
Google Copies Microsoft, Not Apple, To Fix Android Fragmentation
Fragmentation, OS upgrades: Do people even care?
First of all, as I mentioned in my earlier entry, the Android “fragmentation” problem almost all tech journalists refer to basically doesn’t exist or is a non-issue. The vast majority of Android users are running either 2.2 or 2.3, and there’s not that huge a difference between the two versions (yes, I’ve used both on more than one phone). If you are a developer making an app, code it for 2.2+, and you’re targeting almost all Android users. Again, as I said before, I’ve used Android 1.5, 1.6, 2.1, 2.2, 2.3, and 4.0 (just flashed 4.1 on my Galaxy Nexus this week, too). Every single app I use has worked on every version I’ve had. When I get a new version of Android, I restore all my app backups using Titanium Backup, and they all work. Same deal if I install them from Google Play (Titanium Backup is just faster and adds in user data).
I did discover this year, though, what real Android fragmentation looks like. It isn’t running different version numbers. It’s running different skins and apps.
A friend of mine has a Droid X, and she wanted to know how to make Google Voice the default texting app. Basically, couldn’t be done. Had nothing to do with the fact that she was running Android 2.3. When I ran Android 2.3, I had no problems making Google Voice the default texting app. I was running a relatively vanilla (CyanogenMod) 2.3, so when you tap to text someone, it prompts you which program to use. On the Droid X, the built-in messenger app automatically loads up, even if you set Google Voice as the default texting app. Thanks, Motorola for your wonderful Motoblur interface. It stinks.
Then I had a co-worker who wanted to add her work Exchange email account to her phone. She had an Android phone, so she thought I could help, as I also had an Android phone. I also had initially thought my being an Android user would help in this situation. Nope. She had some random LG phone with its own skin and default apps. The email client offered POP3 and IMAP, but Exchange was simply not an option. Again, this has nothing to do with the Android version number. After all, she also was running Android 2.3. In the regular Android 2.3, the Email app can do Exchange. So I had to do some browsing around Google Play and test-drive a few free apps to finally find one that did Exchange.
Those examples are what real fragmentation is, not people using Android 2.2 v. Android 2.3.
Many people don’t know where to put the blame. Is it Google’s fault? Is it the handset manufacturers’ faults? Is it the wireless companies’ faults? Well, I don’t really care whose fault it is, but I know two simple steps Google can take to fix the problem (yes, the real problem, not the one the tech journalists claim to be the problem):
- Change the way skins work. Handset makers want ways to differentiate their Android phones from each other. So they take a regular Android operating system from Google, and then they customize it or “skin” it with some overlain interface. For Motorola, that’s Motoblur. For Samsung, it’s TouchWiz. For HTC, it’s Sense. That’s fine. I don’t mind them customizing the interface. The only problem is that then the customer cannot uncustomize the interface without rooting, and it’s a very small percentage (probably in the single digits) of Android users who will actually root their phones to install custom roms. So instead of just saying “Here! Bake in whatever you like so it can’t be undone,” Google should make it so Android can be skinned through a theming engine, and the handset makers can then make theirs the default theme, but then users who are interested can go back to the vanilla Google theme or download other themes from Google Play.
- Make all stock apps available through Google Play. I shouldn’t have to go hunting down an alternative to Email that includes Exchange support. That should just be in Google Play, ready to install. So handset manufacturers or wireless providers can put on whatever stock apps they think people will need, and then customers who don’t like those apps can then install the stock Google apps instead.
Google has taken a few steps in the right direction, and when more Android users are on Ice Cream Sandwich (4.0) or Jelly Bean (4.1), then they’ll appreciate these steps more. In Ice Cream Sandwich, you can disable preinstalled apps. And in Jelly Bean, you can disable notifications from certain apps, even if you keep them enabled.
I’m a big open source fan, but sometimes Google just has to take some control back. Give carriers and handset makers the right to customize, but then give users more of a right to uncustomize. Then you’ll get less of the real fragmentation problem.