Why iOS 13.2 kill background apps so aggressively?
Why iOS 13.2 kill background apps so aggressively? I've got a terrible feeling since updated to 13.2
iPhone XS, iOS 13
Apple launches Apple Store app in India
The Apple Store app provides customers with the most personalized way to shop for Apple’s innovative lineup of products and services. Learn more >
The Apple Store app provides customers with the most personalized way to shop for Apple’s innovative lineup of products and services. Learn more >
You can make a difference in the Apple Support Community!
When you sign up with your Apple Account, you can provide valuable feedback to other community members by upvoting helpful replies and User Tips.
When you sign up with your Apple Account, you can provide valuable feedback to other community members by upvoting helpful replies and User Tips.
Why iOS 13.2 kill background apps so aggressively? I've got a terrible feeling since updated to 13.2
iPhone XS, iOS 13
Well, I'm one of said developers who should "know better". And to be honest, I've been pulling my hair for the past 2 days to try to figure out what actually changed. As a developer, we receive a background error, then a signal kill. And these got absolutely nothing to do with our code. We seriously tried everything, from creating a background task, a background runner, enabling notifications, disabling everything. In fact, even an empty project gets violently killed.
It's not even a question of multitasking, we know our application is dormant in the background while something else runs. That's not the problem. The issue at hand is the application gets fully killed and removed from memory while before, it didn't. So now, as an app, you need to re-launch the app, re-initialize it, re-upload the 3D assets if any, re-connect to the external network connection, re-do everything from scratch. This is way longer than it used to be, where your app would pretty much start back where it used to be and you only had to check if your assets are still loaded (they usually are) and re-establish your network connection (if needed).
As an example, my app proposes to go to the App Settings if you need to change something important such as dis/allowing Notification access. Previous version, my app stayed there, and was simply returning where it was if the user started it back or used quick move. But now, it gets killed, so it starts back from the splash screen onwards. And I better be quick to save the state because the first thing the Settings app goes when it's launched and in foreground is to kill -9 my app. I don't even have the 2-seconds leeway that's advertised.
Finally, Apple didn't give any guidance and proposals in its default application in order to not get killed, or the circumstances. It just started doing so on 13.2. So for people who says it's normal, usual, or even it's dev's fault, well, even the highly successful apps are stuck with that behaviour and left with their pants down. So this highly smells of an actual bug regression than a new "feature".
Well, I'm one of said developers who should "know better". And to be honest, I've been pulling my hair for the past 2 days to try to figure out what actually changed. As a developer, we receive a background error, then a signal kill. And these got absolutely nothing to do with our code. We seriously tried everything, from creating a background task, a background runner, enabling notifications, disabling everything. In fact, even an empty project gets violently killed.
It's not even a question of multitasking, we know our application is dormant in the background while something else runs. That's not the problem. The issue at hand is the application gets fully killed and removed from memory while before, it didn't. So now, as an app, you need to re-launch the app, re-initialize it, re-upload the 3D assets if any, re-connect to the external network connection, re-do everything from scratch. This is way longer than it used to be, where your app would pretty much start back where it used to be and you only had to check if your assets are still loaded (they usually are) and re-establish your network connection (if needed).
As an example, my app proposes to go to the App Settings if you need to change something important such as dis/allowing Notification access. Previous version, my app stayed there, and was simply returning where it was if the user started it back or used quick move. But now, it gets killed, so it starts back from the splash screen onwards. And I better be quick to save the state because the first thing the Settings app goes when it's launched and in foreground is to kill -9 my app. I don't even have the 2-seconds leeway that's advertised.
Finally, Apple didn't give any guidance and proposals in its default application in order to not get killed, or the circumstances. It just started doing so on 13.2. So for people who says it's normal, usual, or even it's dev's fault, well, even the highly successful apps are stuck with that behaviour and left with their pants down. So this highly smells of an actual bug regression than a new "feature".
iOS 13.2 basically killed multitasking.
iOS on a phone does not actually exist. Only an iPad running ipadOS has true multitasking.
Apps have zero ability to "run" in the background. Once not on screen, they are suspended until you return to them. If the app supports background app refresh, data may continue to be received, but the app itself is suspended.
See >>> https://support.apple.com/en-us/HT202070
I know what multi tasking means thank you very much. But the app is supposed to be suspended in background. I do believe you understand what suspend means? The app should recover its previous state when I switch it back to the front end. When I am watching a youtube video, and switching to FB messenger for a chat, then switching back to the Youtube app, the video should have been paused at where I left off, not restarting the whole app again. Currently in iOS 13.2, a lot of apps are unable to suspend normally in the background. Once you switch back to the app it will restart instead of restoring to previous state. How are you suppose to use your phone assuming you are trying to fill a form, and after replying to a message and switching back to the app, the app already restarted and all your progress is lost?
I know what multi tasking means thank you very much.
Right.
I should have known better when you invoked the name of a man gone for 8+ years in your screed. Rants that devolve to this level of poor taste...
Well... best of luck.
Feedback for Apple goes here >>> http://www.apple.com/feedback/
urrently in iOS 13.2, a lot of apps are unable to suspend normally in the background.
Issues for those app developers to work out. Apple gave them the specs of the new iOS features.
If all apps showed this behaviour, I think you have something. That some can "multitask" correctly, demonstrates an app level issue. It's not always Apple's fault when something goes wrong.
Well, it was still Apple's fault in the end, please go check the latest software update by Apple.
Apple officially lists the contents of iOS 13.2.2 as follows:
What you describe has absolutely ZERO to do with killing background apps. First, there are no background apps on an iPhone. There is the app you are currently using and apps that you have used in the past that are suspended. Pages that are open when you switch to Safari have always reloaded unless the page HTML says it is a static page.
Check to make sure you aren't using Safari in Private mode. It's a feature that will clear your history and cookies when you exit Safari. In Safari, tap on the overlapped square icon in the lower right, then look in the lower left corner for the Private option.
The behaviour has definitely dramatically changed with ios 13.2. Previously if I had a webpage open and I went to another tab or application and came back to that tab after a short while 9 times out of 10 it would still be there and I could continue.
Now if I look at my tabs in safari they are all black and all reload as soon as I select them.
This makes it incredibly difficult say if you are filling in a form and a text message pops up on your phone so you click on the notification to read it and then switch back to Safari and *boom* everything you'd written is wiped and the page is reloaded.
I now basically live in fear of switching apps in case the app I've switched from is killed and the stuff I was doing is lost.
The behaviour is very different and far more aggressive to the point of making app or tab switching a dangerous activity. Feels a bit like I've gone back to my old 3G and only one app at a time
iOS 13.2 basically killed multitasking. I have the 11 with 4GB ram, and it kills off DiDi within 1 min(which is a chinese app of Uber), when it is running in background with GPS ON...
Steve jobs would be crying in the grave.
Since I went to 13.2, my YouTube app never keeps the current video open when you lock your phone and unlock it. It's like the app completely restarts every time. Read these:
https://www.macrumors.com/2019/10/31/ios-13-2-safari-refreshing-poor-ram-management/
YouTube is also saying no network detected. I have to question if the people creating these patches are testing and working with the major software companies that their common customers are using? Something as simple as this should be easily detected. What a P.I.M.A.
iOS 13.2 obviously changed something in how apps should behave in background. It’s up to the app developers to change and adapt. WeChat company Tencent already admitted they found the problem behind the app killing, and applied hotfix. This means this is indeed iOS 13.2 which affected all the apps, but developers can drop hotfix to fix the problem, and should not be a bug within iOS itself. As to why even users reports safari and mail app has the same symptom, well obviously apple internal development team is not well organised or has communication issue, so the OS team did not inform the software team to apply the required change.
One possible cause is some apps tries to wake up the phone over tens and thousands of time within several second. For example WeChat woke up the phone for over 40k times within a 120 second time period, however the new allowed wake up times in iOS 13.2 is just 500. This is just hypnosis though, as the WeChat team never officially revealed what’s behind the app killing problem, but just reported they “fixed” it.
If your app is affected the method solution is to wait for developers to apply hot fix, or else it will be the same in the upcoming iOS upgrade.
Yes, I know. Thanks for telling. I use the latest XCode Beta since Tuesday, which I was eagerly looking for. The bug got mostly fixed in the iPhone 11 Pro Max simulator, but not the iPhone 8 simulator and down, where it is very hit and miss.
Would I touch a single thing other than looking at the simulator (or an iPhone 6 or 8 real device) and it sigkills unceremoniously my test 14.1mb memory footprint app. Example just now in the console log, result of having the audacity to change a setting if the app opened it through UIApplication.shared.open:
Nov 9 00:38:50 SakaMBP com.apple.CoreSimulator.SimDevice.9FC9695F-6F00-4E66-9155-89D0E0845CFD[54061] (UIKitApplication:com.company.software[5678][rb-legacy][54213]): Service exited due to SIGKILL
and the two lines in the app (First one is new warning for the past few versions that seems to be impossible to get rid of - and the second one is after I press the button in the settings app:
2019-11-09 00:38:48.514350-0500 Software[54213:3070373] Can't end BackgroundTask: no background task exists with identifier 3 (0x3), or it may have already been ended. Break in UIApplicationEndBackgroundTaskError() to debug.
Message from debugger: Terminated due to signal 9
But still agreed it's at least hit and miss while the previous version, the sigkill would be 1:1, no matter the way the app exited. Just too bad I cannot close that jira just yet.
Think about it. The iPhone 11only runs iOS 13. To delay iOS would mean to delay the release of the iPhone 11. So they fixed the most significant problems, knowing that there were more things that needed fixing. That's why there was a flurry of point releases over the next few weeks.
Why do you want to keep background apps so aggressively?
I have the same question. Safari reloading web pages after I switch back to it from another app, say a password manager, is a huge pain!!
Yes.. the bugs have been awful lately.. I mean, breaking multitasking after the ridiculous feathering bug... these things are necessary @Apple !.. get these right before it’s released..
Why iOS 13.2 kill background apps so aggressively?