The only way for Google to get around this, IMHO, is to standardize things and have more control over the OS. If they write the OS and then give it to Manufacturers, the code gets changed, only some devices get the update, and one handset might get it today and another won't get it till 2 weeks before the new version of Android drops... Then the carriers get involved and make it even worse with their changes and bloat, etc...
Google needs to say, "Here is the new version, all the phones on the market that can support this need to have the OTA by this date" or something like that. And the carriers need to be out of the software/OS business. Just provide the network and services and leave the devices alone.
Until they can get a majority of the phones all running the latest code and sort of level the playing field, this stuff will happen.
What's the issue with game developers developing based on the GPU, and Android version? This makes the most sense to me. You can't really develop on make and model, there are too many.
That is the issue with Android. It's free and open and so that makes it appealing in a lot of ways, but if you are a dev writing apps to make money, would you rather write something once for one platform that is almost gauranteed to work on any phone on that platform, or would you rather try to write for a platform with hundreds of phones and hardware configs, etc...?
Android's strength, is also its weakness.
Angry Birds, Fruit Ninja, etc...seem to be doing pretty well. Especially Angry Birds.
If there was a standard for Android phones, then all phones could be as amazing as the Galaxy Nexus or the SGS II and Android would have no problem competing with an iPhone or WP7 phone.
One thing 127 Hours has taught me; Never forget the Swiss Army Knife, leave the "Cheap Made in China multi-tool" home.
I mean, we have hardware out now that is all jumbled. We have hardware out that the current OTA software cannot really make use of, and by the time we actually get an OTA that does, our phones will be discontinued and left behind.
I love that we have all this freedom, but with that freedom comes a cost. Its hard to develop for, and it is hard to support. It is hard to update in a consistent and timely manner. Its hard to be 100% compatible.
Yeah, its free, but free will only get you so far. In the end, if there is something that is much better, people will pay for it to get what they want, rather than get something free that is merely "good enough"... The problem is that Android is built on this paradigm, and the only way to standardize and put some controls and things in place, would turn it into something else.
I see Android as an "empire" that builds up and dominates very fast, and then because of the very things that lead it to greatness, it will implode in on itself.
I am interested to see where WM phones go in the future.