iOS7 Multitasking please explain.


batting1000

macrumors 604
Sep 4, 2011
7,223
1,397
Florida
Apps will actually run in the background now. Previously they froze when you exited them.

Also, iOS 7 will learn which apps you use the most at certain times and will allow them to update in the background so they're ready for you when you go into them.
 

Stetrain

macrumors 68040
Feb 6, 2009
3,548
17
http://www.apple.com/ios/ios7/features/#multitasking


Basically there are now a lot of new ways that apps can be periodically woken up to update their content in the background.

For example with the new system, when you get a push notification that you got a new Facebook message the app would be allowed to run in the background for a few moments.

That way when you open the app it can already have the new message downloaded and displayed rather than have to load it after you open the app.

There is also an option for an app to schedule a download in the background that will continue to run even after the app is frozen.
 

fmalloy

macrumors 6502
Nov 5, 2007
402
239
Apps will actually run in the background now. Previously they froze when you exited them.
This is a very simplistic explanation. There are still rules and limitations as to what runs in the background and when. If every app could run full speed continuously in the background without limits you'd run out of battery pretty quickly.
 

Stetrain

macrumors 68040
Feb 6, 2009
3,548
17
Apps will actually run in the background now. Previously they froze when you exited them.
They do not run continuously. They can be woken up for short period of time in the background because of specific triggers. (Except in the specific cases as were available previously like audio playback in the background, VOIP apps, and navigation apps)
 

Mrg02d

macrumors 65816
Jan 27, 2012
1,103
1
Apps will actually run in the background now. Previously they froze when you exited them.

Also, iOS 7 will learn which apps you use the most at certain times and will allow them to update in the background so they're ready for you when you go into them.
Ive read some conflictning thoughts on what, exactly, runs in the background.

When I first read what Apple wrote, I took it as iOS 7 seeing me use a particular app alot and then keeping it in memory for me.

An example: I use my camera alot. From what I understand, iOS 7 would notice this and keep it in RAM for me.

Others pointed out that this is NOT the case. What iOS 7 will do is to allow those apps to update as in APP updates from the App store done in the background.
 

dejo

Moderator
Staff member
Sep 2, 2004
15,981
447
The Centennial State
Oops. My bad. You're right.
That's okay. Maybe just edit your post with the video link to make mention of that. I can then delete these followup posts.

----------

An example: I use my camera alot. From what I understand, iOS 7 would notice this and keep it in RAM for me.
That's not really multitasking. It's just better memory-management. And iOS has been doing this for quite some time.
 

Mrg02d

macrumors 65816
Jan 27, 2012
1,103
1
That's okay. Maybe just edit your post with the video link to make mention of that. I can then delete these followup posts.

----------



That's not really multitasking. It's just better memory-management. And iOS has been doing this for quite some time.
On my 4s it usually takes me 3 seconds to open my camera if I havent been using it often. Jailbroken and running background manager solves this for me, but I plan to leave the jailbreak for iOS 7. Same goes for a few other apps I use: Settings takes its sweet time to open. Yahoo weather is a nightmare to open from a cold start.

It would be great to see iOS 7 keep these in RAM for me...Whats the use of 150mB plus of RAM? Might as well use it...
 

GreyOS

macrumors 68040
Apr 12, 2012
3,265
1,550
I'm not sure what I think about the changes to background task completion. Does that mean, for example, if I send an email and quickly lock screen before it sends, it won't send until the next time I unlock?
 

Brenz

macrumors member
Jun 13, 2012
68
0
Others pointed out that this is NOT the case. What iOS 7 will do is to allow those apps to update as in APP updates from the App store done in the background.
Your getting confused between app updates and the multitasking.

Your right that in iOS 7 apps will be updated automatically instead of being required to update them yourself (can be turned off).

The multitasking is different. For example imagine the Facebook app, previously once you close it it cannot keep running and keep your feed up to date. So when you received a push notification the new data wouldn't be downloaded until you open the Facebook app again.

Now in iOS 7 in some situations apps are allowed to run in the background for short periods of time. This can be down to various things from you using your device, receiving a push notification, the iOS multitasking scheduler noticing a pattern in your use of an app, etc.

So for Facebook if your phone notices that you open the app most days around 3pm it will give Facebook a bit of time just before this to pull the latest data. Or if you get a push notification of a comment it will allow Facebook to get this comment for you ready to view saving you time when you open the app.

Hopefully that explains it a bit better :)
 

GreyOS

macrumors 68040
Apr 12, 2012
3,265
1,550
No, mail is allowed to finish it's task and then the phone will switch off.
Are you saying Mail specifically, or that this is the general concept with the new API? To change the example because first party apps may behave differently, say I'm sending a video in Whatsapp that takes a while to upload. If I did this in iOS 6, went to home screen and locked the phone before it finished, it could continue in the background. The video suggests in iOS 7 that as soon as the screen is locked, the background task is paused and the system goes to sleep.

If you could explain what I'm missing, that'd be great :)
 

mrapplegate

macrumors 68030
Feb 26, 2011
2,818
8
Cincinnati, OH
Are you saying Mail specifically, or that this is the general concept with the new API? To change the example because first party apps may behave differently, say I'm sending a video in Whatsapp that takes a while to upload. If I did this in iOS 6, went to home screen and locked the phone before it finished, it could continue in the background. The video suggests in iOS 7 that as soon as the screen is locked, the background task is paused and the system goes to sleep.

If you could explain what I'm missing, that'd be great :)
A general concept. If you locked the screen then it would lock, but mail would be allowed to continue to send that message then enter a saved state.
If written with the new 7 API's then Whatsapp would also be allowed to finish it's task then enter the background saved state.
I'm can't recall the video, but as of iOS7 any app written to support it can be allowed to finish their task.
 

GreyOS

macrumors 68040
Apr 12, 2012
3,265
1,550
A general concept. If you locked the screen then it would lock, but mail would be allowed to continue to send that message then enter a saved state.
If written with the new 7 API's then Whatsapp would also be allowed to finish it's task then enter the background saved state.
I'm can't recall the video, but as of iOS7 any app written to support it can be allowed to finish their task.
I'm more and more convinced I know better than you do now, sorry. iOS 6 already had background tasks. Whatsapp can already send that video message in the background. One of the changes in iOS 7 is the opportunistic nature of background tasks. So rather than waiting for the app to finish its background uploading (limited to a reasonable time) before going to sleep, as iOS 6 does, iOS 7 now pauses the task as soon as the screen is turned off. This then allows the phone to sleep soon after. If in 10 minutes you wake your phone again, the background task can continue. The idea is that it's more efficient to do this when the phone has to be powered up anyway because the user is interacting with it. Apps will still get more or less the same time to complete a task, but it won't necessarily be contiguous. Seems like a smart idea, but I worry about the number of times I send off a quick message and put the phone to sleep immediately expecting it to continue in the background. Sounds like it now won't complete until next time I wake it up.
 

mrapplegate

macrumors 68030
Feb 26, 2011
2,818
8
Cincinnati, OH
I'm more and more convinced I know better than you do now, sorry. iOS 6 already had background tasks. Whatsapp can already send that video message in the background. One of the changes in iOS 7 is the opportunistic nature of background tasks. So rather than waiting for the app to finish its background uploading (limited to a reasonable time) before going to sleep, as iOS 6 does, iOS 7 now pauses the task as soon as the screen is turned off. This then allows the phone to sleep soon after. If in 10 minutes you wake your phone again, the background task can continue. The idea is that it's more efficient to do this when the phone has to be powered up anyway because the user is interacting with it. Apps will still get more or less the same time to complete a task, but it won't necessarily be contiguous. Seems like a smart idea, but I worry about the number of times I send off a quick message and put the phone to sleep immediately expecting it to continue in the background. Sounds like it now won't complete until next time I wake it up.
There are a couple of ways it is handled. The video I linked to explains it better. You need to be a registered developer to view. I'm sure I'm not explaining it well after only watching it once. It's 42min long , if I recall.
 

GreyOS

macrumors 68040
Apr 12, 2012
3,265
1,550
There are a couple of ways it is handled. The video I linked to explains it better. You need to be a registered developer to view. I'm sure I'm not explaining myself well after only watching it once. It's 42min long , if I recall.
I have watched the video you linked to earlier and everything I'm saying is in response to it. Will rewatch it as I'm sure I missed something. Thanks for being patient.
 

mrapplegate

macrumors 68030
Feb 26, 2011
2,818
8
Cincinnati, OH
I have watched the video you linked to earlier and everything I'm saying is in response to it.
I still think Mail will send the message in the background. I can test it. I do recall if the developer chooses to use one instance that as you said the app will take advantage to brief periods of being "on" and continue tasks.

Mail delivered the message. I sent it, watched the progress bar go 1/4 of the way of sending and locked the phone.

----------

I have watched the video you linked to earlier and everything I'm saying is in response to it. Will rewatch it as I'm sure I missed something. Thanks for being patient.
I'm just trying to make sense of it all. There is too much to take in to be knowledgeable.
 

GreyOS

macrumors 68040
Apr 12, 2012
3,265
1,550
I'm just trying to make sense of it all. There is too much to take in to be knowledgeable.
Right. Figured it out. What I said is only partially correct - it's correct for regular offline background tasks. So if your background task is to tidy up a few things in your app or whatever then yes, there is the potential for that task to be paused immediately when the screen is turned off whereas before it could continue for a bit longer.

But what iOS 7 allows for is another specific type of background task for transferring files. And this is more free than ever - it can continue when the app has exited, it isn't time limited, and so on. So those network transfer examples I gave (Mail and Whatsapp) both fall under this, and will be able to complete. Thanks for persisting with me! :)
 

mrapplegate

macrumors 68030
Feb 26, 2011
2,818
8
Cincinnati, OH
Right. Figured it out. What I said is only partially correct - it's correct for regular offline background tasks. So if your background task is to tidy up a few things in your app or whatever then yes, there is the potential for that task to be paused immediately when the screen is turned off whereas before it could continue for a bit longer.

But what iOS 7 allows for is another specific type of background task for transferring files. And this is more free than ever - it can continue when the app has exited, it isn't time limited, and so on. So those network transfer examples I gave (Mail and Whatsapp) both fall under this, and will be able to complete. Thanks for persisting with me! :)
Got it. That makes sense.