Member-only story

Location Service in the Background iOS

Mr.Javed Multani
1 min readOct 2, 2020

--

To use standard location services while the application is in the background you need first turn on Background Modes in the Capabilities tab of the Target settings, and select Location updates.

Or, add it directly to the Info.plist.

<key>NSLocationAlwaysUsageDescription</key>
<string>
I want to get your location Information in background</string>
<key>
UIBackgroundModes</key>
<array><string>
location</string> </array>

Then you need to setup the CLLocationManager

Objective C

//The Location Manager must have a strong reference to it._locationManager = [[CLLocationManager alloc] init];
_locationManager.delegate = self;//Request Always authorization (iOS8+)if ([_locationManager respondsToSelector:@selector(requestAlwaysAuthorization)]) { [_locationManager requestAlwaysAuthorization];}//Allow location updates in the background (iOS9+)if ([_locationManager respondsToSelector:@selector(allowsBackgroundLocationUpdates)]) { _locationManager.allowsBackgroundLocationUpdates = YES;}
[_locationManager startUpdatingLocation];

Swift

self.locationManager.delegate = selfif #available (iOS 8.0,*) {
self.locationManager.requestAlwaysAuthorization()}if #available (iOS 9.0,*) {
self.locationManager.allowsBackgroundLocationUpdates = true}
self.locationManager.startUpdatingLocation()

--

--

Mr.Javed Multani
Mr.Javed Multani

Written by Mr.Javed Multani

Software Engineer | Certified ScrumMaster® (CSM) | UX Researcher | Youtuber | Tech Writer

No responses yet