Метод startMonitoringSignificantLocationChanges не отвечает - PullRequest
1 голос
/ 13 октября 2010

Я использовал метод startMonitoringSignificantLocationChanges, чтобы найти текущее местоположение.Работает нормально, если устройство неподвижно, но оно не отвечает во время путешествия и изменились вышки сотовой связи.

Получает начальный обратный вызов.Я использую этот метод

-(void)UpdateOwnLocation{

[locationManager stopMonitoringSignificantLocationChanges];
[locationManager startMonitoringSignificantLocationChanges];

}

Он вызывается через каждые регулярные интервалы, но не обновляет местоположение во время путешествия.Я попытался заменить метод на -

-(void)UpdateOwnLocation{

//[locationManager stopMonitoringSignificantLocationChanges];
//[locationManager startMonitoringSignificantLocationChanges];

    [locationManager stopUpdatingLocation];
[locationManager startUpdatingLocation];  
      
}

, и процесс выполняется в фоновом режиме.

1 Ответ

0 голосов
/ 13 октября 2010

Работает ли устройство стационарно?Вы имеете в виду, что вы получаете начальный обратный вызов, но никаких последующих обратных вызовов?

Что-то, о чем вы должны знать:

В CoreLocation в 4.1 есть ошибка .В основном, если ваше приложение находится в фоновом режиме, то оно будет зависать, когда местоположение ядра пытается разбудить вас.Видимо это исправлено в 4.2.

...