Faced with a question about battery life of devices running Google's Android, Google's co-founder Larry Page said developers needed to be smarter about their applications' use of system resources, particularly when running in the background. If your phone doesn't last a day, google says to blame your third party developers.
This may expose an experience advantage of Apple in the platform-delivery business, which in the resource-constrained world of the mobile device could be a significant advantage. Apple has delivered platforms for third-party development for decades, and is fully aware how developers (ab)use system resources. Apple's strategy to allow only specific APIs to execute on behalf of a background app in iPhone OS v.4 is a design decision made on the strength of long experience that lazy developers' behavior will reflect on the platform. Apple's MacOS 9 crashed only when misbehaving apps ran; yet, who got the blame? Apple has learned something important about both the behavior of developers and about the nature of the blame game, and Apple's design decision is likely to pay off over the next few years as Apple delivers better and better hardware while making it easier and easier for developers to code non-abusive applications.
Apple's decision to craft a particular customer experience, and to expect that developers who want to reach those customers will code accordingly, has caused some irritation. At the end of the day, though, the proof will be in the pudding: do people like what Apple delivers, or perfer a competitor? The fact that Google is out there doing the same things so differently probably helps Apple in its position that users have broad choice and are not being locked into an Apple solution. There's plenty of room in the sandbox.