2012-03-04 4 views
3

В документации не ясно, как осуществляется мониторинг региона. Является ли это чисто основанием для значительного изменения местоположения или представляет собой смесь значительного изменения местоположения и службы стандартного определения местоположения?Мониторинг региона CLLocationManager при значительном изменении местоположения

ответ

1

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

+0

Спасибо за ответ. Так что это, кажется, какая-то умная комбинация из двух режимов локации. – lichen19853

+0

@ lichen19853: Я надеюсь, что Филипп прав (и поэтому я делаю что-то неправильно), но я получаю только триггеры каждый раз, что заставляет меня думать, что GPS не учитывается. FYI, я живу в Eugene OR, городе около 150 000 ... –

0

Мониторинг области Ya начался после IOS 4.0 и последних устройств, а также работает, когда приложение прекращено или идеальный режим означает, что его служба, не зависящая от приложения, является зависимой от ios службой, такой как локальное уведомление, которое вы находите в своем местоположении или даете определенную координату местоположения в Регин и установить мониторинг области после конкретного заданного расстояния его методов enterin области и exitRegion называемых внутри этих функций и сделать ваш Wirk

Установить регион,

CLLocationDistance dist=200.0; 
    CLRegion *region = [[CLRegion alloc]initCircularRegionWithCenter:coord radius:dist identifier:@"Test"]; 
    if([CLLocationManager regionMonitoringEnabled] && [CLLocationManager regionMonitoringAvailable]) 
     [locationManager startMonitoringForRegion:region desiredAccuracy:kCLLocationAccuracyBest]; 

-(void)locationManager:(CLLocationManager *)manager didExitRegion:(CLRegion *)region 
{ 

} 

-(void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region 
{ 

} 
Смежные вопросы