В Mapbox Android SDK мы можем установить / настроить StepMilestone, т. Е. Мы можем получить обратные вызовы до достижения Маневра текущего шага.
Есть ли в iOS Mapbox SDK какие-либо эквивалентные опции для прослушиванияпрогресс StepMilestone?
В настоящее время в iOS нет прямого эквивалента, так что это не так просто, как в Android.( отказ от ответственности: в настоящее время я работаю в Mapbox )
Лучший способ сделать это на iOS - использовать turf-swift's LineString.distance (from: to:) (Который входит в комплект SDK для навигации), чтобы найти ближайшую координату на маршруте на основе заданного POI.
Затем вы можете ответить на NotificationName.routeControllerProgressDidChange , сравнив это расстояние с RouteProgress.distanceTraveled .Если пользователь перешел указанный вами порог, создайте SpokenInstruction и скажите voiceController NavigationViewController для произнесения (_ :) этого.Вы можете увидеть несколько похожий пример этой последней части в этом примере: https://docs.mapbox.com/ios/navigation/examples/custom-voice-controller/
Надеюсь, это поможет.