Я получаю текущее местоположение с помощью CLLocationManager, и я получаю значения широты и долготы текущего местоположения. Я не использовал Mapview в своем приложении. Поэтому всякий раз, когда изменяется текущее местоположение, я хочу обновить текущее местоположение на сервере. И каждые 5 минут мне нужно вызвать веб-службу и обновить текущее местоположение на сервере в фоновом режиме и режиме переднего плана.Как получить текущее местоположение в фоновом режиме на iPhone?
-(void) getCurrentLocation
{
// To get the current location of the place
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.distanceFilter = kCLDistanceFilterNone; //whenever we move
locationManager.desiredAccuracy = kCLLocationAccuracyBest; //100 m
//Start the location manager, then only updates the current location
[locationManager startUpdatingLocation];
}
/In Location manager delegate method, if the location is updated it will call and get the values from the newLocation using CLLocation
-(void) locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
{
CLLocation *location = [locationManager location];
// Configure the new event with information from the location
CLLocationCoordinate2D coordinate = [location coordinate];
NSString *lat = [NSString stringWithFormat:@"%f", coordinate.latitude];
NSString *lon = [NSString stringWithFormat:@"%f", coordinate.longitude];
NSLog(@"dLatitude : %@", lat);
NSLog(@"dLongitude : %@",lon);
self.reverseGeocoder = [[[MKReverseGeocoder alloc] initWithCoordinate:newLocation.coordinate] autorelease];
reverseGeocoder.delegate = self;
[reverseGeocoder start];
//Stop the location manager
[locationManager stopUpdatingLocation];
}
Когда бы ни было изменено место, в это время я хочу получить широту и долготу для конкретного местоположения.
Спасибо!