iPhone - отключение событий CLLocationManager в фоновом режиме - PullRequest
0 голосов
/ 18 сентября 2011

У меня есть приложение, которое использует CLLocationManager для получения обновлений местоположения и заголовка.Когда приложение отправляется в фоновом режиме, CLLocationManager по-прежнему получает события (перехваченные в отладчике, пока приложение не отображается на экране).

Обязан ли я перехватывать событие «отправлено в фон» и использовать BOOL для выхода из метода делегата события, чтобы забыть эти обновления, или остановить / перезапустить CLLocationManager?

или есть другойрешение прекратить получать эти события, когда в фоновом режиме?

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

Я знаю, что есть параметр project.plist для установкизаставить iOS продолжать отправлять события местоположения в приложение, даже если оно находится в фоновом режиме.Я не установил этот параметр.Поэтому я думаю, что есть способ сказать iOS, что я не хочу, чтобы эти события были в фоновом режиме ...

1 Ответ

0 голосов
/ 18 сентября 2011

Используйте следующие методы UIApplicationDelegate:

-(void)applicationDidBecomeActive:(UIApplicetion*)application;
-(void)applicationWillResignActive:(UIApplicetion*)application;
-(void)applicationDidEnterBackground:(UIApplicetion*)application;
-(void)applicationWillEnterForeground:(UIApplicetion*)application;
...