Я пытаюсь захватить координаты через LocationManager. Я получаю идеальное местоположение, когда я нахожусь в сети WIFI. Но получайте неправильное местоположение (в радиусе 500 м от моей текущей позиции), когда я переключаюсь на данные сотовой связи. Я пробовал все комбинации «желаемого качества», но не смог получить точные координаты. Любое решение?Получение неправильных корней при отслеживании через пакет данных сотовой связи
locationManager = [[CLLocationManager alloc] init];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
currentLocation = nil;
[locationManager startUpdatingLocation];
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{if(currentLocation != nil)
currentLocation = NULL;
NSTimeInterval locationAge = -[newLocation.timestamp timeIntervalSinceNow];
NSLog(@"Location age %f", locationAge);
if (locationAge > 0.1) return;
currentLocation = [[CLLocation alloc] initWithLatitude:newLocation.coordinate.latitude longitude:newLocation.coordinate.longitude];
NSLog(@"current location - %@",currentLocation);
NSString *lat =[NSString stringWithFormat:@"%lf",currentLocation.coordinate.latitude];
NSString *lon =[NSString stringWithFormat:@"%lf",currentLocation.coordinate.longitude];
latitudeText.text = lat;
longitudeText.text = lon;
[manager stopUpdatingLocation];}
Вы проверяете это на статическом месте? – Dinesh
Нет. Я пытаюсь использовать его на устройстве. –
Для этого может быть 2 причины. 1) Сеть не включена на вашем SIM-карте. 2) Проблема с ячейками. Проверьте свое приложение в другом месте, отличном от вашего офиса. Также попробуйте отключить Wi-Fi и проверьте его с помощью сотовых данных. – Dinesh