Мониторинг региона iOS в фоновом режиме

Я использую Мониторинг регионов в своем приложении, и у меня возник вопрос, что я не могу найти ответа на него. Как работает мониторинг региона в фоновом режиме?

Согласно информации о местоположении PG:

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

Теперь этот вопрос: мое приложение находится в приостановленном режиме, регион был введен и триггер должен быть доставлен, это событие будет отправлено "прямо" делегату:

locationManager:didEnterRegion:

?? Тот же вопрос, если приложение находится в фоновом режиме. Другими словами, есть ли какой-либо код, который я должен рассмотреть в режиме приостановки и в фоновом режиме для получения этого события? или iOS сначала запустит приложение, а затем отправит событие делегату напрямую без необходимости использования кода BG?

Ответ 1

Мониторинг региона. Резервирует ваше приложение, когда вы входите в контролируемый регион, если находитесь в фоновом режиме.

однако при повторном подключении приложения вам необходимо снова настроить свой менеджер местоположений.

что-то вроде этого -

if ([launchOptions objectForKey:UIApplicationLaunchOptionsLocationKey] ) 
     {

        NSLog(@"Relaunched due to location update");

        NSLog(@"app woke up times ---- %d",ForTest);

        NSLog(@"Starting the location manager");
        self.locmanager = [[CLLocationManager alloc] init];
        [self.locmanager startMonitoringForRegion:(CLRegion)*region];
       // self.locmanager.pausesLocationUpdatesAutomatically = YES ;
    }

Ответ 2

Насколько я знаю, мониторинг региона работает только с iPhone4, и он основан на устройстве, изменяющем башни связи. Таким образом, он использует меньше батареи, чем стандартное обновление фонового местоположения. Убедитесь, что вы включили соответствующие фоновые режимы. Пока вы выполняете этот делегат, вы должны быть готовы к работе.

Ответ 3

enter image description here

включить Режимы фона, в которых разрешены обновления местоположения и выбор фона