5

I've seen Android developers get the accuracy of a GPS location. Is there a way that I can get the accuracy of my currenct GPS location in iOS?

I am using the code from this answer to get my location:

 locationManager = [[CLLocationManager alloc] init];
 locationManager.delegate = self;
 locationManager.distanceFilter = kCLDistanceFilterNone;
 locationManager.desiredAccuracy = kCLLocationAccuracyBest;
 [locationManager startUpdatingLocation];


 - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
     NSLog(@"OldLocation %f %f", oldLocation.coordinate.latitude, oldLocation.coordinate.longitude);
     NSLog(@"NewLocation %f %f", newLocation.coordinate.latitude, newLocation.coordinate.longitude);
 }
Community
  • 1
  • 1
SirRupertIII
  • 12,324
  • 20
  • 72
  • 121

3 Answers3

8

There are 2 properties on the CLLocation -horizontalAccuracy and -verticalAccuracy. Most of times the accuracy is based on the hardware that you are using to get the location

Andrea
  • 26,120
  • 10
  • 85
  • 131
8

horizontalAccuary of CLLocation gives the estimated positional error in meters related to the latitude, longitude coordinate.

verticalAccuracy gives the estimated error related to altitude.

AlexWien
  • 28,470
  • 6
  • 53
  • 83
2

Use horizontalAccuracy and verticalAccuracy properties in CLLocation class. If horizontalAccuracy is a huge value you can discard the signals.

Also make sure to check the timeStamp with current date to ensure that the GPS signal is not cached.

Shibin S
  • 139
  • 1
  • 9