locationManager: didUpdateToLocation: fromLocation не вызывается для мониторинга значительных изменений местоположения - PullRequest
1 голос
/ 18 мая 2011

Я реализовал фоновое отслеживание местоположения с использованием стандартных служб определения местоположения, и оно отлично работает.Однако, поскольку эта реализация потребляет много энергии, я решил переключиться на мониторинг значительных изменений местоположения.По сути, я просто изменил все вызовы на startUpdatingLocation на startMonitoringSignificantLocationChanges и повторно использовал методы CLLocationManagerDelegate, которые я реализовал ранее.

Проблема заключается в том, что после переключения на мониторинг значительных изменений местоположения метод делегата locationManager:didUpdateToLocation:fromLocationвызывается только один раз, когда я начинаю мониторинг, и после этого больше никогда не вызывается.Я передвигался по телефону на пару километров и пытался ехать с ним на поезде, но метод так и не был вызван.Я что-то здесь упускаю?Есть ли настройки, которые мне нужно включить, или специальный код, который мне нужно написать, чтобы это работало?

Спасибо!

1 Ответ

1 голос
/ 26 мая 2011

Для существенного изменения местоположения для работы требуются вышки сотовой связи. Если у вас нет приема с мобильного телефона, вы не получите никаких результатов. Вы также можете вызвать метод CLLocationManager visibleLocationChangeMonitoringAvailable, чтобы узнать, доступен ли он.

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