didUpdateToLocation не вызывается после остановки обновлений местоположения и повторного запуска - PullRequest
0 голосов
/ 21 февраля 2012

У меня есть сценарий, в котором я ищу текущее местоположение. Как только начинается поиск текущего местоположения, я использую "startMonitoringSignificantLocationChanges", я вызываю делегат didUpdateToLocation и получаю значение местоположения.

После завершения поиска я использую "stopMonitoringSignificantLocationChanges", чтобы отключить GPS.

Моя проблема в том, что я могу перейти к поиску окружающего местоположения через некоторое время, когда это будет сделано, то есть когда я снова начну искать текущее местоположение после того, как какое-то время включается GPS, но «didUpdateToLocation» не вызывается.

Я делаю все это в контроллере представления.

Я инициализировал диспетчер местоположений и установил желаемую точность «kCLLocationAccuracyNearestTenMeters», а distanceFilter - «10.0f».

Почему я не могу вызвать делегата didUpdateToLocation при остановке обновлений местоположения и повторном запуске.

Пожалуйста, помогите мне любым телом ...

Ожидаем положительного ответа от любого из вас.

Спасибо.

1 Ответ

2 голосов
/ 25 февраля 2012

Вы должны использовать startUpdatingLocation вместо startMonitoringSignificantLocationChanges. startMonitoringSignificantLocationChanges вызывает didUpdateToLocation, только когда местоположение значительно изменилось.

if (locationManager == nill)
    locationManager = [[CLLocationManager alloc] init];

locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters;
locationManager.distanceFilter = 10;

[locationManager startUpdatingLocation];
...