Событие входа в геозону, полученное при изменении разрешений, но пользователь никогда не покидал забор - PullRequest
0 голосов
/ 05 июля 2018

Я тестировал мониторинг геозоны в своем приложении для iOS, и внезапно этот метод получил название locationManager(_ manager: CLLocationManager, didEnterRegion region: CLRegion)

Это было неправильное поведение для меня, потому что я никогда не покидал регион, который в настоящее время контролировался. (произошло только один раз)

Шаги, которым я следовал, пока возникла проблема.

  1. Я настроил геозону на 500 м
  2. Запущен контрольный забор.
  3. Изменен радиус области до 3000 м
  4. Сохранил забор и начал мониторинг региона.
  5. Пройдя около 200 м от центра геозоны.
  6. Изменены разрешения служб определения местоположения для приложения с «Всегда» на «Никогда»
  7. Мгновенно изменил разрешение обратно на то, чем они были, т.е. "Всегда"
  8. И в этот момент я получил событие входа в геозону. (Хотя мне никогда не удавалось воспроизвести эту проблему.)

Это было странное поведение для меня, и я не смог справиться с такого рода событиями.

Q1. Можно ли как-нибудь определить, не переступил ли я забор, чтобы я мог проверить, когда я получу вход на любой забор.

Когда я проверил поведение с ОС Android, я был рад видеть метод "setInitialTrigger" в запросе геозоны, который будет обрабатывать, был ли вход / выход / задержка начальным или нет.

Q2. Есть ли что-нибудь похожее на INITIAL_TRIGGER_ENTER в iOS.

...