[1] http://developer.android.com/about/dashboards/index.html
[1] http://developer.android.com/about/dashboards/index.html
At some point I got an Android, had to root and install CM to upgrade after waiting a long time for OTA update. Then I got a Lumia 920 last year to see the development opportunity on WP8, had to wait for an update (Portico?) to roll out on my carrier for months after it's US release. Got rid of it sometime later.
My iPhone 5 is downloading the iOS 7 update right now.
It seems like only Apple has enough money-making power for carriers to tell the carrier to go screw themselves.
Apple didn't always offer the stream the updates over the air, and they've always been good about getting the new OS pushed out. I think another part of it is that iPhone users are more likely (or at least were) to plug their phones into their computers, use iTunes, and be prompted to update their phones. That part didn't deal with the carriers at all.
It's pretty simple - Apple owns the hardware and software they're pushing updates for. Sure, they don't own the carriers, but that's not the problem.
In Google's case they neither own the hardware nor all the software because each third party phone manufacturer slaps in its own stuff and maintains its own fork of android.
Microsoft might own the software, but they don't fully own the hardware. Microsoft is a lot closer to managing it than Google though.
This isn't that Apple has more power over carriers and it isn't hard to understand - it's simply that they have more ownership of all the devices and there are far fewer types of devices (very limited set of software/hardware combinations).
Which is a problem because these forks take substantial time to update to the newest version of each OS. And then they take more time because sometimes vendors make modifications to the core OS that breaks Google or other core apps (see e.g. EVO and Gmail) so the whole system has to be QA'd rigorously to prove that nothing is broken.
And some disadvantages - most users have an outdated operating system, and developers have to deal with fragmentation of OS versions and hardware platforms.
The fact that Apple can get its latest OS onto a majority of devices ignores nothing.
Apple can do this because of a strategy decision they made. Google cannot because they chose a different strategy that has different priorities.
If you want an ecosystem where users have up-to-date system software, Apple has chosen correctly.
Apple prioritized getting updates into the hands of customers. Google did not, since as you say their design decisions make what apple has achieved impossible for them.
I like standard Android OS from google and I don't know why vendors try so hard to gimmickify standard Google UI. There are things that they should be able to do. But they should be there upon request, not by default and with no obvious way to opt out of crappola of vendor modifications.
Right now they are moving important apps to the appstore, so they can be upgraded without changing android version.
Windows 8 has been polarising and comes at a time when PCs in general has seen almost no growth. You are better off looking back at the Windows 95 days. In which case Microsoft allowed OEMs to customise parts of the OS whilst still allowing updates.
Google has just poorly designed Android. End of story.
That's more about Google's negotiating capabilities with the carriers than how they design software.
My iPhone 4 can get iOS 7 today. That's as old of a device as a Galaxy S or S II I believe. I'm pretty sure that the S and S II are both in Android 2.2 or 2.3 land.
It's a side effect of the two different approaches to ecosystem for sure, but it's not an unfair comparison.