Background App Refresh and Significant Location Changes Tracking

Hello,

I’m writing an app that records the position of the user at all time (when he requests it!).

I have two questions.

I’ve read the doc, and found this

Note: When a user disables the Background App Refresh setting either globally or for your app, the significant-change location service doesn’t relaunch your app. Further, while Background App Refresh is off an app doesn’t receive significant-change or region monitoring events even when it's in the foreground.

and this

Important: A user can explicitly disable background capabilities for any app. If a user disables Background App Refresh in the Settings app—either globally for all apps or for your app in particular—your app is prevented from using any location services in the background. You can determine whether your app can process location updates in the background by checking the value of the backgroundRefreshStatus property of the UIApplication class.

First question: Why my app does not appear in Background App Refresh even though I use the significant location change API?

Second question: I tested the doc’s statements, and found out my app was revived after being killed when a significant location change occurred. Does anybody know if the doc is out-of-date, or if it never was accurate? (Or if I misunderstood something!)
Post not yet marked as solved Up vote post of frizlab Down vote post of frizlab
2.6k views

Replies

bump

I'm trying now in iOS 16 and setting Background Refresh as OFF for the app doesn't affect regular background location updates. Looks like documentation for this permission has been significantly changed to only relate to the Background Refresh Tasks: https://developer.apple.com/documentation/uikit/uiapplication/1622994-backgroundrefreshstatus