iOS CoreLocation vérifiant l'horodatage CLLocation pour l'utiliser

Comment vérifier un object CLLocation et décider si vous voulez l'utiliser ou ignorer le résultat et get une nouvelle mise à jour de l'location à la place?

J'ai vu la propriété timestamp sur CLLocation, mais je ne suis pas sûr de savoir comment comparer cela à l'heure actuelle.

Aussi, après avoir comparer l'heure et find la différence en secondes, quelle valeur la différence devrait-elle avoir pour que j'utilise cet object CLLocation? Qu'est-ce qu'un bon seuil?

Merci!

Il est vraiment important de vérifier l'horodatage, car iOS met généralement en cache l'location et, en tant que première mesure, renvoie la dernière caching. Voici comment procéder dans la méthode déléguée de Core Location Manager:

 - (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{ CLLocation * newLocation = [locations lastObject]; //check if coordinates are consistent if (newLocation.horizontalAccuracy < 0) { return; } NSTimeInterval interval = [newLocation.timestamp timeIntervalSinceNow]; //check against absolute value of the interval if (abs(interval)<30) { //DO STUFF } } 

J'utilise 30 secondes. Comme vous pouvez le voir, je vérifie également la cohérence du résultat en demandant la précision horizontale.
J'espère que cela t'aides,
Andrea