The unproven urban myths states that swipe closing apps that you have open on your iOS Device will save the battery life. Well this myth has been well and truly debunked. A customer decided to email Tim Cook asking about said myth and got a response instead from iOS Chief Craig Federighi, 9to5mac uncovered.
And Craigs response to this was:
So there we have it! Closing your iOS apps does not increase battery life, but why?
Closing Apps Does Not Improve Your Battery Life
Basically it all has to do with adding, removing and loading up the contents of RAM. RAM, for those of you that don’t know is where applications are stored when they are not in use, it allows the app to be accessed quicker than loading from Backing Storage. Lets think of it like a room with a door. If I open an app after fully closing it I have to unlock the door to then get the app but if I just go home and leave the app open in the background I only have to open the door to get the app, I don’t have to unlock it. It takes more time and effort to get an app that has been ‘swipe’ closed (locked the door) than one that has just been left in the background (the door isn’t locked).
If you want to know the technological side actually is, read on.
Enought With The Analogies
Okay, lets give all apps a state.
State 0 : App is fully closed, it is not open in the background
State 1 : The app has been opened before but is not on the screen it is still in the iPhone app switcher
State 2 : The app is open on the screen
If our app is in State 0 then we have to perform what is called the Fetch Execute Cycle. We go to the Hard Drive or SSD and we get the applicaion from there, we then execute it using the CPU and place the application in RAM to make it qusicker to access making our app in state 2. When we put the app in State 1 generally the app stays in RAM which is closer and faster to the CPU. If we put the app in state 2 again then the CPU can access the application quicker and it already has cached data assigned to it. If we put the app in state 0 after being in state two then the application is removed from RAM and cache memory and we have to perform the slower Fetch Execute cycle all over again.