If you look at some of the comments developers have made about the pain it is to support all the variations of Android OSes out there plus the varying screen sizes and hardware configurations, then, yes, fragmentation is a real issue.
and it can affect customers. its not ooh, the end of the world but its a problem that is worse on Android than iOS - and it makes developing and supporting apps harder on Android.
Well, I did specify 'from an end user perspective'. I'm sure it can add extra hassle for developers, but people have been developing software for desktops for ages with the same constraints and it has never been an issue until people who didn't like Android needed a paper tiger.
for example, when Netflix launched on Android, out of all the various Android phones out there, it only supported six:
Not exactly an issue of OS version fragmentation, though. Once someone released a version of the APK that disabled device ID check, it ran on most handsets with no modification to the OS required.
http://lifehacker.com/5804109/install-netflix-on-your-unsupported-android-device-no-rooting-required
I think comparing Android fragmentation to Mac OS (or Windows) is comparing apple and oranges. the comparison needs to be iOS (and possibly WP7 and WP8 in the future). there are different expectations from users and different restrictions on the developers between mobile and desktop apps.
You may have some point there, but it is kind of a vague argument. What I was getting at is that developers have had to grapple with this issue for a long time on the desktop. Yes it may be easier to develop for a single uniform platform, but its hardly some unheard of challenge to have to deal with multiple platforms with different software versions.
As a user of an Android phone for 2 years, I've never once felt inconvenienced by fragmentation. Android definitely has some legitimate problems for end users, I just don't think that fragmentation is one of them.
Here's what Fragmentation means to me:
Android:
I can go to any store and buy myself a brand new Android device, but I can't be guaranteed that every device will have the latest OS on it. I could get one with 4, or I could get one with 2. And if I get one, there is no guarantee that I will ever be able to upgrade to 4. I have an Android phone that has 2.1 on it and there's literally no way to upgrade it to even the highest 2.x version let alone 4.x. And these are brand new phones. Google has no say over what OS is sold on brand new devices because it's up to the company that makes the device. If they want to sell a low end phone with Android 2.1 on it, they will. And they won't guarantee anything about updates. There is literally no chance I will be able to upgrade my phone to even 2.3 and I only bought it last February. At the time it came out, the OS was already out of date.
When a new Android version comes out, you have to WAIT for the company that makes the phone or tablet to give you the permission to update, if that ever happens.
The question of not necessarily knowing what you are getting unless you do your homework is a fair point, although part of the point there has to do with communication.
The question of how long your handset maker chooses to support the handset by releasing updates is not a problem caused
by fragmentation - at least not in the common use of the word - although I agree that it is a very legitimate grievance about the Android phone experience.
This is a little bit of a tangent, but I think that a person needs to be reasonable about the question of whether their device will be supported forever. Even in the iOS camp, your original iPhone won't support the latest version and an iPhone 4 does not get all the features of iOS 5. The real problem I think is that there is no way of estimating a minimum length of support for OS updates for Android phones, and that uncertainty is unpleasant.