Проблема в получении текущего местоположения карты в iphone SDK - PullRequest
0 голосов
/ 06 декабря 2010

Поскольку мне нужно текущее местоположение карты, я использовал код как:

locationManager = [[CLLocationManager alloc] init];
        locationManager.delegate = self;
        locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters;

        [locationManager setDistanceFilter:10];
        [locationManager startUpdatingLocation];

И я получаю ошибку в методах didFailWithError как:

- (void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error
{
    printf("\nXXXXXXXXXXXXXXXXXXXXXXXXXX Inside didFailWithError in locationmanager method XXXXXXXXXXXXXXXXXXXXXXXXXX");
    NSLog(@"Error: %@", error);
}

И я получаю сообщение об ошибке в моей консоли следующим образом:

XXXXXXXXXXXXXXXXXXXXXXXXXX Inside didFailWithError in locationmanager method XXXXXXXXXXXXXXXXXXXXXXXXXX2010-12-06 17:58:12.335 ParkingAreaLocator[6992:207] Error: Error Domain=kCLErrorDomain Code=0 "The operation couldn’t be completed. (kCLErrorDomain error 0.)"

И Wi-Fi включен.

Я не получаю текущее местоположение в симуляторе и устройстве 4.0 SDK.

Может кто-нибудь, пожалуйста, помогите мне, как решить эту проблему.

Спасибо, Мониш

Ответы [ 2 ]

0 голосов
/ 06 декабря 2010

Это намного проще, чем вы делаете это.Я предполагаю из названия, что у вас есть MKMapView на ваш взгляд?Если это так, вы можете использовать его для получения местоположения пользователя.

В вашем .h этот контроллер представления должен принять протокол.

Затем в .m выполните следующее:

void viewDidLoad() 
{
    ...
    myMapView.showsUserLocation = YES;
    ...
}


(void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)location
{
    //Do whatever! that MKUserLocation is the location the map view just determined.
}
0 голосов
/ 06 декабря 2010

kCLErrorDomain = 0 означает kCLErrorLocationUnknown

Менеджер местоположений не смог получить значение местоположения прямо сейчас.

Если служба определения местоположения не может сразу получить исправление местоположения, она сообщает об ошибке kCLErrorLocationUnknown и продолжает попытки. В такой ситуации вы можете просто игнорировать ошибку и ждать нового события.

Попробуйте с меньшей точностью

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...