Cómo detener múltiples llamadas al método didUpdateLocations en ios
Agregue algunas restricciones allí. Intervalo de tiempo entre la ubicación y la precisión
-(void)locationManager: (CLLocationManager *)manager didUpdateLocations: (NSArray *)ubicaciones
{
CLLocation * newLocation = ubicaciones.lastObject;
NSTimeInterval locationAge = -[newLocation.timestamp timeIntervalSinceNow];
if (locationAge gt; 5.0) return;
if (newLocation .horizontalAccuracy lt; 0) return;
// Necesario para filtrar ubicaciones en caché y demasiado antiguas
//NSLog(@"Ubicación actualizada a = @", newLocation);
p>CLLocation *loc1 = [[CLLocation alloc] initWithLatitude:_currentLocation.coordinate.latitude longitude:_currentLocation.coordinate.longitude];
CLLocation *loc2 = [[CLLocation alloc] initWithLatitude: newLocation. coordinar.latitud longitud: nuevaUbicación.coordinar.longitude];
doble distancia = [loc1 distanciaDeUbicación: loc2];
_actualUbicación = nuevaUbicación;
if(distancia gt; 20)
{
//actualización de ubicación significativa
}
//ubicación actualizada
}