Well, not everyone agrees on the definition of multi-tasking. As a consumer, interleaving of processes seems quite adequate to me (i.e. no apps running in the background; apps are suspended on minimize), but an app developer may not agree.
I suspect that multitasking support, if introduced will be of the interleaved type- Apple's stance on true background apps being battery killers seems sensible to me.
But then, you never know: with the newer iPad style batteries, they might even pull it off! (I still doubt it, though, since that sort of OS update won't work on older iPhones)
Are they fast and reliable enough? (My understanding was that part of the Urban Airship value proposition was helping to paper-over the unreliability of Apple's push notifications.)
You absolutely do not need multi-tasking (for 3rd party apps) to have background music. You simply need to expose the system media player as a service. I'd actually much prefer that solution. In fact, _most_ backgrounding needs would be better as a sensible system service call. Services could be provided for scheduling jobs, callbacks for location awareness events, etc.
Yeah, you're right. Streams are tricky- music and network too. I think Android solves it using services; would be interesting if Apple comes up with something different (I don't like daemons on my phone personally; but maybe it doesn't matter to most people.)
Sorry I accidentally downvoted you. I agree with you. From a consumer point of view not being able to play music in the background makes the iPhone OS seem incomplete.
I wonder if some sort of hybrid of the current push notifications and GCD might prove a workable stopgap? I.e., apps can register asynchronous event listeners while running, and push notifications can trigger those to give the appearance of multitasking.
If the background listeners/workers are heavily resource-constrained and subjected to limited API access, you might be able to maintain most of the battery life and performance advantages of the current single-task model, while still allowing apps to perform some amount of background processing. Any "heavy lifting" involving a full app UI, the GPU, or outbound network access could still require user confirmation and a task swtich.
I'm sorry but there isn't a false dichotomy between multi- vs. single-tasking, or did you mean to imply something else? I know the operating system is a multitasking environment, but that aspect of it is not exposed in any kind of useful way outside of Apple's pre-chosen features.
As a technical description maybe there isn't, but at user level there is; one or the other or somewhere in between. This is what people are arguing about that you unhelpfully dismissed.
I think most people are used to their computers being able to play music and browse the Web at the same time. If Apple wants to push the iPad as a computing device, they might hit a snag with consumers.
Edit: Whoops. I'll leave the comment but I do realize this isn't an iPad thread.
I suspect that multitasking support, if introduced will be of the interleaved type- Apple's stance on true background apps being battery killers seems sensible to me.
But then, you never know: with the newer iPad style batteries, they might even pull it off! (I still doubt it, though, since that sort of OS update won't work on older iPhones)