The problem for Apple was that extremely cool packages like Unity3D and Adobe CS5 were poised to make it really easy for developers to write great apps in a safe clean sandbox and press a big orange button to deploy to iPhone.
This was formerly a very clever way around Apple’s previous requirement that all apps be native, as in rock solid compiled vs. flexibly interpreted/JITed like Flash and Silverlight. But Apple, clearly masochists the lot of them, wanted everyone else to use their circa-1980s-with-GUI-glued-on XCode development environment too. Or they just wanted to screw their whole ecosystem because they’re too arrogant to fail, right?
Well, unfortunately, that’s not really what’s going on here. Apple isn’t stupid. The problem with CS5 and Unity3D for Apply is that they are inherently cross-platform. The people inside Apple, I’m sure, don’t really care what you use to develop their apps as long as they make money (for Apple), sell more iPhones, iPads & iUnderwear, and the apps generally don’t suck (at least in aggregate).
But Apple does care when I write a game that runs as well or better on Android or WinMo7 or Netbook+Flash, with no added effort, and gives users a great set of choices, some of them free. For developers, this is exactly what we want — the most/cheapest outlets for our work. So Apple is forcing developers to choose. "You want our luscious money-printing (for a select few) platform, then we want 100% loyalty."
This is the same reason other companies, ahem, look for games that offer exclusives to their console. Do I like it? As a developer, of course not. As an employee, meh. Not my call. But it does work, more than it doesn’t, and helps build a brand instead of a commodity.
Where it fails, and where Apple is being stupid IMO (and only IMO) is when they no longer have the sexiest hardware or lion’s share of mindshare, which may be sooner than they think. When someone else has something more appealing, then Apple will be forced to help developers cross-develop onto Apple’s platform, as other companies do now for theirs, and as Apple once did for all sorts of creative apps like Adobe’s.
All of that said, I’m ditching my iPhone anyway — the only reason I got it was because there was nothing better at the time. I have no loyalty to brands, only people.