Как получить текущее местоположение или GPS-координаты с Core Location? - PullRequest
1 голос
/ 24 июня 2010

Как получить текущее местоположение или координаты GPS с помощью базовой структуры местоположения?

1 Ответ

6 голосов
/ 24 июня 2010

Прежде всего вам нужен класс, реализующий протокол CLLocationManagerDelegate.Поэтому, по крайней мере, вам нужно реализовать метод:

- (void)locationManager:(CLLocationManager *)manager
    didUpdateToLocation:(CLLocation *)newLocation
           fromLocation:(CLLocation *)oldLocation
{
 ...
}

После этого создайте экземпляр CLLocationManager, установите делегат и начните обновлять расположение:

CLLocationManager *locationManager = [[CLLocationManager alloc] init];
locationManager.delegate        = self;  //SET YOUR DELEGATE HERE
locationManager.desiredAccuracy = kCLLocationAccuracyBest; //SET THIS TO SPECIFY THE ACCURACY
[locationManager startUpdatingLocation];

После вызова startUpdatingLocationВаша реализация locationManager: didUpdateToLocation: fromLocation вызывается, как только происходит исправление местоположения.Параметр newLocation содержит ваше фактическое местоположение.НО менеджер местоположений исправит местоположение как можно скорее, даже если указанная вами точность не указана.В этом случае вы должны проверить точность нового местоположения самостоятельно.

cheers, anka

...