Приложение iOS использует геообъект для уведомления пользователя о предопределенных соседних местоположениях. Приложение может пропустить некоторое место (пользователь не получает уведомление о ближайшем местоположении), но желательно сохранить недостающую скорость.
Одним из способов реализации этого является запуск мониторинга для значительных местоположений изменений с помощью startMonitoringSignificantLocationChanges
, и каждый раз, когда происходит событие изменения местоположения, ищите места внутри радиуса 500 м от зарегистрированного местоположения.
Меня беспокоит требование выполнять запрос для соседних регионов каждый раз, когда происходит существенное изменение местоположения, и оно влияет на батарею.
Другой способ сделать это - зарегистрировать местоположения с помощью startMonitoringForRegion
, но Apple установила (разумное) ограничение количества одновременно отслеживаемых регионов, которое составляет 20, и у нас есть значительно более 20 местоположений. Поэтому требуется какое-то динамическое обновление отслеживаемых регионов, но я все еще не уверен, что это лучший способ сделать это.
Любые идеи о том, как это можно сделать так, чтобы он сохранял низкое потребление энергии, но также имел низкий коэффициент пропускания для местоположений?