Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Each of the examples you cited could be accomplished by enabling background streaming only. Stream last.fm or Pandora in the background and run the other app you need in the foreground. You can't have more than one foreground app up at a time anyway, and I can't think of a single app that needs to be run in the background that's not either streaming audio or messaging.* If you can think of one, I'd be happy to hear it.

* The possible exception are things like scrobbling or Google Latitude services, but such things would be such a drain on the battery running in the background that I don't think they will ever be allowed as third-party apps.


There are over 130,000 apps in the App Store. You can't just go by the usage examples that I've given. Someone many want three apps (or more) running in the background for a particular task. They may want Omnifocus always running in the background because it has a feature that alerts you of a potential task to be completed in the area you are in using GPS. There are tons of different usage examples and the only real answer for that is true multitasking.
 
Each of the examples you cited could be accomplished by enabling background streaming only. Stream last.fm or Pandora in the background and run the other app you need in the foreground. You can't have more than one foreground app up at a time anyway, and I can't think of a single app that needs to be run in the background that's not either streaming audio or messaging.* If you can think of one, I'd be happy to hear it.

* The possible exception are things like scrobbling or Google Latitude services, but such things would be such a drain on the battery running in the background that I don't think they will ever be allowed as third-party apps.

Like someone else mentioned earlier, not all apps resume from the same state it was closed. Especially apps that need secure Login like Etrade, Logmein, Spb wallet, and others. Switching to other apps for reasons like copy-n-paste or just checking something will close these apps and you'll have to start from the begining. And some apps, you will even lose whatever text or data you inputed if you did not save first. So every once in a while, if your not jailbroken it could be a slight pain in the arse.

That being said: As I stated in a earier post, I don't think the level of importance is as high as some posters and bloggers make it out to be. Most users aren't losing sleep over it. But on the same note it has to be implemented sooner or later(most likely next gen), and patience is virtue. Apple just might implement it better than Backgrounder jailbroken.
 
There are over 130,000 apps in the App Store. You can't just go by the usage examples that I've given. Someone many want three apps (or more) running in the background for a particular task. They may want Omnifocus always running in the background because it has a feature that alerts you of a potential task to be completed in the area you are in using GPS. There are tons of different usage examples and the only real answer for that is true multitasking.

You really think Apple is going to let a backgrounded App keep the GPS alive? No way. This is precisely the kind of thing Apple wants to prevent from being run in the background. Can you suggest any others?

Like someone else mentioned earlier, not all apps resume from the same state it was closed. Especially apps that need secure Login like Etrade, Logmein, Spb wallet, and others. Switching to other apps for reasons like copy-n-paste or just checking something will close these apps and you'll have to start from the begining. And some apps, you will even lose whatever text or data you inputed if you did not save first. So every once in a while, if your not jailbroken it could be a slight pain in the arse.

Solving this doesn't require backgrounding, it just requires the kind of intelligent suspend that Carniphage was talking about. The only reason an app actually needs to run in the background is if it is actually doing something.
 
You really think Apple is going to let a backgrounded App keep the GPS alive? No way. This is precisely the kind of thing Apple wants to prevent from being run in the background. Can you suggest any others?

Oh really? A person can't have a to-do list app checking GPS coordinates when it's being powered in their car? Maybe you don't want radio streaming either because wifi kills the battery. It's a ridiculous mentality to have that "Apple is protecting us from ourselves". I'm an adult and can understand the concept of actions & the consequences thereof. I don't own AAPL stock and I couldn't care less about Apple pandering to the lowest common denominator. If the "technologically ignorant", which is now mostly the baby boomers and older, can't handle this then leave it off by default in the settings menu. Most Generations Xers and younger know how to use a computer and understand the idea that the more apps you use, the less battery life you have.

BTW, another example is having Pandora, Navigon & Trapster running at once. I don't have to come up with every conceivable option for you. The merits of multitasking speak for itself. On the other hand you are a proponent of doing something that no other OS maker believes in except Apple. You would have to explain yourself more than I do. Go ask any WM, BB, WebOS, Android and Symbian user if they would ever give up multitasking. I think you know what answer to expect.
 
Solving this doesn't require backgrounding, it just requires the kind of intelligent suspend that Carniphage was talking about. The only reason an app actually needs to run in the background is if it is actually doing something.






I don't really agree with most of what he had to say(no offense). One of the biggest reasons multitasking is wanted is user control, and that method of multitasking lacks control. I especially don't agree that an app is made to run on almost all the mobile's memory and/or CPU.
 
On the other hand you are a proponent of doing something that no other OS maker believes in except Apple. You would have to explain yourself more than I do. Go ask any WM, BB, WebOS, Android and Symbian user if they would ever give up multitasking. I think you know what answer to expect.

I am not an advocate of any such thing. I love that I can multitask on my jailbroken iPhone just as I can on a computer. What I am saying, and what I firmly believe is true, is that Apple does not view the iPhone in the same way as you and I do. We think of the iPhone as an infinitely-customizeable computer system, limited only by it's hardware and the ingenuity of programmers. For Apple it is a content-delivery system, and the most important features are that it deliver the content Apple wants to deliver simply and efficiently.

Multitasking is simply not essential to this vision; indeed, it is seen as a threat. Any version of multi-tasking it eventually implements will be done in a way that minimizes any threat to it's careful control of the user experience it has designed -- be it battery life or system performance. Push notifications were the first step...a compromise which allowed IM and limited push content without actually backgrounding. Any future steps (such as streaming audio) will be done the same way. I think you're deluding yourself to think otherwise.
 
But I am not seeing a strong case for allowing apps to actually RUN in the background. The only example uses are messaging and audio streaming.

C.

Solving this doesn't require backgrounding, it just requires the kind of intelligent suspend that Carniphage was talking about. The only reason an app actually needs to run in the background is if it is actually doing something.

I don't think either of you really understand how processes in a computer system work very well. Let me show you a screenshot of my task manager:

tasks.png

The CPU column represents how much load the process puts on the CPU as a percentage of the full processing power available. The memory columns indicates how much available memory (RAM) the process uses. I captured that in the middle of writing this post and Firefox is only using 1% of the CPU even though it's in the foreground. The entire system is idling at 3% of the CPU.

Consequently, apps that are in the background don't need to be "intelligently suspended" because typical apps already do not use any CPU power when they are idle. There doesn't need to be exceptions solely for streaming audio or message apps (or GPS or other tracking apps). By their own nature, app processes determine whether or not they are running in the background.

In other words, there is as difference between an app running (using processing power) and "running" (process is in memory but not using any processing power). Any app that doesn't need to RUN (as you use the term) in the background doesn't actually require any processing power, so there doesn't need to be exceptions on a per-app basis for apps that do need to run in the background.
 
In other words, there is as difference between an app running (using processing power) and "running" (process is in memory but not using any processing power). Any app that doesn't need to RUN (as you use the term) in the background doesn't actually require any processing power, so there doesn't need to be exceptions on a per-app basis for apps that do need to run in the background.

Let me try to explain, Eso. Sure, running my Scrabble game in the background wouldn't use any resources. I do know what idling processes are. I'm talking about the ones that aren't idling. I think we can both agree that there are apps that Apple doesn't want to run in the background. Those include GPS-enabled apps, apps which would keep alive open TCP/IP connections, etc. We can disagree that this is necessary, but it is clear that this is a priority for Apple.

There are two ways Apple could go about this:

1) They could allow applications to run in the background and place restrictions on those apps (either preventing certain apps from running in the background or preventing backgrounded apps from doing certain battery-draining or other resource-using things).

2) They could prevent all non-native apps from running in the background and provide compromise solutions/workarounds like saved application states, push notifications, and a streaming audio framework for the most common uses of multitasking.

In either case Apple is not going to allow unrestricted backgrounding of processes. Does anyone here really think that they are?

So which way is better? I don't know, but I think it's clear that Apple intends to follow the latter course. Saved application states and push notifications were the first steps on this course. Streaming audio is the next logical step. Sure, the more flexible and freer approach would be to open up backgrounding to any process and let users monitor their applications. But when have you known Apple to choose the less-restrictive and more flexible approach when they could maintain strict nanny-like control of the user experience? I am sure if Apple believes they can maintain the single user-app concept while appeasing 95% of those who want multitasking by providing push notifications and streaming audio, that's what they are going to do.

And that will meet the needs of 95%+ of its customers. You and I and str1f3 are not typical iPhone users. Nobody on this forum is. We're part of the 5% who will grumble about not being able to run Pandora and Omnifocus and Navigon all at once, and will continue to jailbreak our phones. But when has Apple ever given any sign that they were making the iPhone to for us?
 
I see your point. But I think when most point want multi-tasking vs that of open the app and closing the same, its about all the small things:

Whats happening to the internet connection of the app. During a multi-task, processes are still running and not cutting the connection.

Is the data saved? some apps save the data the moment you close them, some don't.

How can i make switch apps fast and easy?

I think apple can make a system where you do a fake multi-task.

The biggest problem is switching. You don't want to make it too complicated because its about a clean simple UI. I think having a way to open your 5 recent apps would be nice. Instead of going from App -> Home button -> App2 -> home buttom -> original app. A quick switch can make the transition quick.

Some apps open and close faster than others, if you apple can minimize this with a good enough processor, then you can switch apps as fast as it is done on the ipad. Thats important because then when doing quick switch will just open the app (very quick) and seem like it was already open from the start. Having the apps save during close eliminates any data loss.

It seems like even from a BB phone, its all about quick switching. I mean only one app is on your screen at one time. You aren't splitting the screen like windows. So really, there is no point in having multi-task. Losing your internet connections such as gmail, BB messenger and other services is a problem. As people complain about pandora not running in the background.

(for pandora, this isn't a solution but they could create a webapp like that used for the ESPN app. where if you are running something in the background, it opens safari and using that to stream the file)

I do like googles and palm pre's notification bar alot.
 
And that will meet the needs of 95%+ of its customers. You and I and str1f3 are not typical iPhone users. Nobody on this forum is. We're part of the 5% who will grumble about not being able to run Pandora and Omnifocus and Navigon all at once, and will continue to jailbreak our phones. But when has Apple ever given any sign that they were making the iPhone to for us?

Part of the problem is that jailbreaking removes security off the iPhone. Some may, like myself, may be willing to do it even though it seems that Apple is actively working against by changing the Boot ROM on the newest hardware.

The other part of the problem is that the way to properly make a good UI is to hide all complex features for everyone until it is needed by the moderate to advanced user. It is not just to simply remove what many would consider fundamental features to any modern OS. Apple's own apps on the Mac indicate this is possible like Pages, iPhoto or iCal. Palm's WebOS's use of the cards interface is something real easy to grasp. Novice users have been multitasking on their BB for years in the US despite its horrible UI.
 
str1f3: I think perhaps the problem here is that I don't find it particularly illuminating to talk endlessly about what you (or I, for that matter) think would be ideal in an operating system. I am interested in talking about what I actually think Apple will implement. We can throw tantrums all we want, but I don't think there is any way Apple is going to do what you want them to.

I'll stipulate that what you suggest is precisely what I'd like to see the OS look like. But that and five bucks will get us a cup of coffee. In the end, I'm far more interested in what Apple is likely to do than what I'd like them to do.

PS: Jailbreaking does not remove any security. I don't know what you're talking about. But that's a topic for another thread.
 
I think this thread is a fail. If multitasking was good for us, Apple would have already put it in.
 
str1f3: I think perhaps the problem here is that I don't find it particularly illuminating to talk endlessly about what you (or I, for that matter) think would be ideal in an operating system. I am interested in talking about what I actually think Apple will implement. We can throw tantrums all we want, but I don't think there is any way Apple is going to do what you want them to.

I'll stipulate that what you suggest is precisely what I'd like to see the OS look like. But that and five bucks will get us a cup of coffee. In the end, I'm far more interested in what Apple is likely to do than what I'd like them to do.

PS: Jailbreaking does not remove any security. I don't know what you're talking about. But that's a topic for another thread.

Tantrums? If you don't want to have a gentleman argument then don't reply. I don't know where you get the idea of any attitude from me but whatever. This thread isn't about really about what features YOU think Apple intends to offer, but about multitasking on the iPhone. The truth is you have no idea what Apple may implement or if they offer nothing at all so conjecture is pointless since they are not listening to you.

Oh btw, it's been known for a long time that jailbreaking removes layers of security on the iPhone since it essentially allows for unsigned apps through Cydia.

http://blogs.pcmag.com/securitywatch/2009/03/please_dont_jailbreak_your_iphone.php
 
This thread isn't about really about what features YOU think Apple intends to offer, but about multitasking on the iPhone.

But that's just the point. I don't believe what you are describing is anything that will ever be on a non-jailbroken iPhone. How can you call it "multitasking on the iPhone" if it's nothing Apple will ever implement?
 
But that's just the point. I don't believe what you are describing is anything that will ever be on a non-jailbroken iPhone. What I'm talking about is the closest we're likely to see to multitasking at least in the near future. How can you call it "multitasking on the iPhone" if it's nothing Apple will ever implement?

Then we agree to disagree. I'm not necessaily to looking to Apple's answer but a solution to the problem. I don't think the idea that true multitasking is outlandish and I think whatever solution you're proposing may be just as "unrealistic". The latest idea floating around the web is that Apple is somehow going to use widgets to as some solution to background processes due to the disappearance of the weather and stock icons on the iPad. Nobody has a clue of any feature Apple may be introducing in OS 4.0.
 
I think whatever solution you're proposing may be just as "unrealistic". The latest idea floating around the web is that Apple is somehow going to use widgets to as some solution to background processes due to the disappearance of the weather and stock icons on the iPad.

I'm not really proposing a "solution." I'm saying that I think what Apple is likely to implement is improved saved states for applications and frameworks for streaming audio. Perhaps they will eventually work out a way to create a framework for live or periodic "reverse push" updates to allow automatic scrobbling or location updates to social media sites. Who knows what will come down the road, but I don't think it will be the ability to run Navigon running in the background.
 
Not saying it is perfect, and best in all situations, but there are advantages to Apple's method and they will continue to tweak it to make it better while maintaining the advantages.

Many of these examples provided as to why no multi-tasking sucks would easily be fixed if the programs truly saved their state.

No doubt for some this is a deal breaker, but there are options for you.
 
I don't think either of you really understand how processes in a computer system work very well. Let me show you a screenshot of my task manager:

In other words, there is as difference between an app running (using processing power) and "running" (process is in memory but not using any processing power). Any app that doesn't need to RUN (as you use the term) in the background doesn't actually require any processing power, so there doesn't need to be exceptions on a per-app basis for apps that do need to run in the background.

Hi Eso,

Thanks, but what you are describing, is how well-behaved applications should act when in background. If we could trust all applications to work this way, then there would not be a problem.

But we can-not.

No one can vet or double check all applications for good behaviour. And what you describe is exactly the situation on Android, where users who casually leave open a bunch of Applications find their foreground performance and battery life is compromised.

A bad neighbour app, could be pushed to background and continue to drain CPU resources. This would mean the foreground task could not be guaranteed 90% or more of the CPU. And as I have said before that isn't acceptable on a mobile device. The situation gets worse if the backgrounded task mainly does nothing, and then on some external trigger decides to allocate memory, or tie-up a network connection. The detrimental effect on the foreground application is just unacceptable in a piece of consumer electronics.

So I say again, there just isn't a strong case for background app to be given *any* CPU resources at all.

The only justifications I hear are either audio streaming, and messaging.
And I think both of these functions are trivially easy to implement using some sort of delegation - either to widgets, or to an OS-side service.

For users, this would bring all the benefits of multi-tasking with none of the downside.

For developers, this would be trivially easy to accommodate.
They'd simply need to deal with the consequence of their app taking a "nap"

Program: Did I fall asleep?
OS: For a little while.

C.
 
Of course, the whole mess could be sorted out by implementing something like Backgrounder where the more technically savvy can relegate whatever apps to background processing and the ignorant masses remain clueless. Just gotta convince Jobs that it was his idea and it'll be done by tomorrow morning. I swear that as time goes by Jobs becomes more and more like Bill Gates was 25 years ago. It's almost uncanny.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.