IOS – On an iPhone, how to stop app from running in the background, as disabling “App Refresh” doesn’t seem to do it

iosiphonemultitasking

Does disabling "App Refresh" in the Settings on iPhone (with iOS 9.3.4) actually stop an app from running in the background?

Because I actually disabled "App Refresh" for all apps (globally). And then I started the app Nike Running, and then after it started, then I started Pokemon Go.

So Pokemon Go should be the foreground app, and Nike Running should be the background app. However, when I stopped walking or continued to walk, the phone did vibrate with the Nike Running voice about the walk pausing and resuming. So it looks like Nike Running is running in the background despite the App Refresh being disabled?

Best Answer

Here's Apple's definition of Background App Refresh:

Apps can continue to run for a short period of time and are then set to a suspended state so they are not actively in use, open, or taking up system resources. They will instantly launch when you return to them. Certain tasks or services can continue to run in the background. To lessen the effect on battery life, normal app background refreshing is scheduled for efficient times, such as when your device is connected to Wi-Fi, plugged into a power source, or being actively used. When Background App Refresh is on, apps that take advantage of this feature can refresh themselves in the background.

A key part of that definition is ...apps that take advantage of this feature.... Perhaps Nike coded their app to take advantage of some of those features while continuing to run in the background (to update your exercise location, stats, etc).

There's a good read for this on Background App Refresh in Layman's Terms and I would recommend you read it to get a better understanding on how the system is setup and how it's used by apps.