После анализа служб определения местоположения в iOS 10 выяснилось, что некоторая несогласованность в поведении кэширования.Точность временной отметки местоположения в ios
Получение мест в течение периодического времени (в моем случае каждые 20 секунд) возвращает местоположения, но их временные метки не находятся в хронологическом порядке. Это указывает на то, что места кэширования могут иметь проблемы. Поэтому, если вы проверяете точность с помощью метки времени местоположения, лучше сохранить предыдущие временные метки. Чтобы вы могли решить, может ли использоваться выбранное местоположение или нет.
Ниже изображение взято из моего журнала консоли. Здесь я использовал формат «Lat Long: latitude_longitude | location_timestamp | сейчас: CURRENT_TIMESTAMP»
Чтобы выполнить этот ответ вы могли бы добавить эту цитату из https://developer.apple.com/reference/corelocation/cllocationmanager "Поскольку для возврата первоначального местоположения может потребоваться несколько секунд, диспетчер местоположений обычно передает ранее данные кэшированного местоположения, а затем предоставляет более современные данные о местоположении по мере их появления. Поэтому всегда полезно отметьте метку времени любого объекта местоположения, прежде чем предпринимать какие-либо действия ». – Starlord
@Joakim спасибо за комментарий, я обновил ответ. –
Зачем вы это делаете? let _ = locations.first – netshark1000