Battery life. It is the entire reason for Apple providing devs with multitasking services and fast app switching in their API rather than just letting every app continue running in the background. The fast app switching part just requires a recompile - background audio and network completion tasks require special coding, but it is no more difficult than those codes would be otherwise - just a different approach. I don't expect it will take long for most apps to get updated, and of course the flood of apps coming every day will support it. The Android approach requires app developers to understand the tradeoffs and design their apps in such a way that they don't continue chewing up massive resources while backgrounded (i.e. killing the battery), because they are not prevented from doing so by the API. Many app developers will not do a good job of that.