There has been a lot of discussion of late comparing the Apple iOS market and the Android market to the battle between Windows and MacOS many years ago. I think this comparison is misleading, and I think people looking at todays "OS Wars" would do well to remember the "OS Wars" of yesterday.
The comparison goes like this: Apple makes a proprietary device, with their own OS on it, and you can only get it from them. Google makes an OS (Android) that they license to multiple vendors, and you can get it on a large variety of hardware. This makes Google Android the Microsoft Windows of this battle.
Except that what a lot of people don't remember is that when Windows rose to dominance, Apple wasn't their only competitor. The truly entrenched product was Unix. And Unix owned the Datacenter. Unix people couldn't imagine Microsoft Windows ever being inside their Datacenter. It was inconceivable. And so the Unix vendors engaged in what we now call the "Unix Wars".
In the Unix Wars, there were a lot of vendors selling variants of AT&Ts UNIX. Now, in theory, these would all be compatible with one another, because they all came from AT&T (or Berkeley) as a starting point. But the vendors all wanted to make their product better than the competition so they all added different things, so theirs would stand out. And Developers quickly found that they couldn't make one version of their application, but had to make multiple versions, one for each of the major UNIX products out there. They might have different graphical interfaces, or they might have different hardware capabilities. And so, the application market was splintered.
Microsoft, on the other hand, while allowing their product to run on absolutely anybodies hardware, was very controlling over how Windows looked and acted. You could buy Windows from CompaQ or from IBM but what you got was the same. You had the exact same interface, you had the exact same applications, you had the exact same programming libraries available, so developers could make one copy of their application and it would run everywhere Windows did. Microsoft controlled EXACTLY how Windows looked, what was on the desktop, what was on the menu bar, no matter who you bought it from.
It is Apple, not Google, who is following this model. Sure, iPhones are only available from AT&T in this country, but they are available in a lot of other countries, from a lot of other vendors. And you can run your app on any of them, they'll all look and work the same. And when the AT&T exclusivity runs out and you can get an iPhone on other carriers, it will still look and act exactly like an iPhone.
Google, on the other hand, lets the carrier modify their OS how they see fit, and we are seeing a repeat of the "Unix Wars" all over again. Each carrier tries to make their version better, put a better front end on it, change how the hardware works, make theirs just a tiny bit shinier so people will buy it instead of the identical version from their competitor. And the Developers have to deal with that difference, and the Android market is fractured, at least a little bit, because of it.
iOS vs Android isn't MacOS vs Windows. It's Windows vs Unix. And Apple is playing the role of Microsoft this time.