iOS Geofence CLCircularRegion мониторинг. locationManager: didExitRegion не работает должным образом
В настоящее время я пытаюсь настроить приложение для мониторинга определенных регионов, используяCoreLocation
однако я считаю, что он не работает должным образом, мне кажется, что он не может работать с небольшим небольшим радиусом, установленным для каждого местоположения, то есть 10 м.
Я также собрал небольшое тестовое приложение, которое отображаетрадиус круга на карте, чтобы я мог визуально видеть, что происходит.
Код, который я использую для мониторинга местоположений, выглядит следующим образом:
self.locationManager = [[CLLocationManager alloc] init];
self.locationManager.delegate = self;
self.locationManager.desiredAccuracy = kCLLocationAccuracyBest;
// Set-up a region
CLLocationDegrees latitude = 52.64915;
CLLocationDegrees longitude = -1.1506367;
CLLocationCoordinate2D centerCoordinate = CLLocationCoordinate2DMake(latitude, longitude);
CLCircularRegion *region = [[CLCircularRegion alloc] initWithCenter:centerCoordinate
radius:10 // Metres
identifier:@"testLocation"];
[self.locationManager startMonitoringForRegion:region];
Я не поставил здесь код дляDidEnter
регион и т. д., поскольку я знаю, что это работает, когда я ухожу на расстояние более 100 м от контролируемого региона.
Вот снимок экрана приложения, когда я нахожусь на расстоянии более 10 метров от пурпурного местоположения на карте, события региона выхода не запускаются, однако, если я переключаю свойместо нахождения вЛондон он срабатывает, а также, когда я установил свойместо нахождения туда, где в данный момент находится синее местоположение, оно также срабатывает.
Кто-нибудь знает, есть ли ограничение с минимальным радиусом области вообще или возможно я делаю что-то не так.
Спасибо Аарон