Есть ли способ перевести CLLocationManager в режим ожидания, но не остановить? - PullRequest
2 голосов
/ 03 ноября 2010

Я создаю приложение для отслеживания, и оно может получать позиции из CLLocationManager в фоновом режиме, что создает опасность потребления батареи без ведома пользователя, поэтому я хочу сэкономить как можно больше батареи.

Я хочу, чтобы приложение отслеживало «активно» (с locationManager.distanceFilter = 10;), когда имеется достаточно спутников, чтобы предоставить координаты GPS, но «бездействует», когда пользователь находится в помещении (не может получить координаты GPS от спутников) или не движется (даже с охватом спутников).

Вопрос в том, как сделать «холостой ход». [locationManager stopUpdatingLocation]; полностью прекратит проверку обновлений местоположения, которые затем не будут знать, когда переключиться на «активное» отслеживание.

У кого-нибудь есть намеки, пожалуйста? Спасибо.

1 Ответ

0 голосов
/ 03 ноября 2010

вы смотрели: CLLocationManager

- (void)startMonitoringSignificantLocationChanges

или, возможно,

- (void)startMonitoringForRegion:(CLRegion *)region desiredAccuracy:(CLLocationAccuracy)accuracy

...