Mapbox Navigation SDK for iOS Docs Navigation SDK for iOS Reference (1.0.0)

View on GitHub

Install in Dash

Mapbox Navigation SDK for iOS Reference Configuration Reference
  • Guides
    • Using Map Matching
    • Reduce Memory Usage
    • Styling the UI
  • Turn-by-turn UI
    • NavigationViewController
    • NavigationViewControllerDelegate
    • RouteVoiceController
    • SpeechSynthesizing
    • SpeechSynthesizingDelegate
    • MapboxSpeechSynthesizer
    • SystemSpeechSynthesizer
    • MultiplexedSpeechSynthesizer
    • SpeechError
    • SpeechFailureAction
    • SpokenInstructionErrorCode
    • NavigationOptions
    • NavigationView
  • Core Navigation Logic
    • NavigationService
    • NavigationServiceDelegate
    • MapboxNavigationService
    • Router
    • RouterDataSource
    • RouteController
    • – NotificationUserInfoKey
    • RouterDelegate
    • RouteProgress
    • RouteLegProgress
    • RouteStep
    • RouteStepProgress
    • CongestionLevel
    • VisualInstruction
    • VisualInstructionDelegate
    • NavigationEventsManager
    • EventsManagerDataSource
    • NavigationLocationManager
    • ReplayLocationManager
    • SimulatedLocationManager
    • NavigationRouteOptions
    • RouteOptions
    • NavigationMatchOptions
    • SimulationMode
    • PassiveLocationDataSource
    • – NotificationUserInfoKey
  • Maps
    • NavigationMapView
    • NavigationMapViewDelegate
    • NavigationMapViewCourseTrackingDelegate
    • MGLMapView
    • MGLAccountManager
    • MGLMultiPolygonFeature
    • MGLMultiPolyline
    • MGLMultiPolylineFeature
    • MGLPointAnnotation
    • MGLPointFeature
    • MGLPolygon
    • MGLPolygonFeature
    • MGLPolyline
    • MGLPolylineFeature
    • MGLStyle
    • PassiveLocationManager
    • WaypointStyle
  • Styling
    • Style
    • StyleManager
    • StyleManagerNotificationUserInfoKey
    • StyleManagerDelegate
    • DayStyle
    • NightStyle
  • Formatters
    • DistanceFormatter
  • UI Components
    • BottomBannerViewController
    • BottomBannerViewControllerDelegate
    • SpeedLimitView
    • UserPuckCourseView
    • CourseUpdatable
    • NavigationComponent
  • Guidance Instruction UI
    • TopBannerViewController
    • InstructionsCardViewController
    • InstructionsCardContainerView
    • InstructionsCardContainerViewDelegate
    • InstructionsBannerViewDelegate
    • ManeuverView
    • JunctionView
    • GenericRouteShield
  • CarPlay
    • CarPlayManager
    • CarPlayManager
    • CarPlayManagerDelegate
    • CarPlayNavigationViewController
    • CarPlayNavigationDelegate
    • CarPlayActivity
    • CarPlayCompassView
    • CarPlayMapViewController
    • CarPlaySearchController
    • CarPlaySearchController
    • CarPlayConnectionObserver
  • Configuration
    • RouteControllerDeadReckoningTimeInterval
    • RouteControllerMediumAlertInterval
    • RouteControllerHighAlertInterval
    • RouteControllerManeuverZoneRadius
    • RouteSnappingMaxManipulatedCourseAngle
    • RouteControllerMaximumAllowedDegreeOffsetForTurnCompletion
    • RouteControllerMaximumDistanceBeforeRecalculating
    • RouteControllerUserLocationSnappingDistance
    • MBCongestionAttribute
    • MBCurrentLegAttribute
    • MBRouteLineWidthByZoomLevel
    • NavigationMapViewMinimumDistanceForOverheadZooming
    • NavigationViewMinimumVolumeForWarning
    • RouteControllerIncorrectCourseMultiplier
    • RouteControllerLinkedInstructionBufferMultiplier
    • RouteControllerMaximumSpeedForUsingCurrentStep
    • RouteControllerMinNumberOfInCorrectCourses
    • RouteControllerMinimumBacktrackingDistanceForRerouting
    • RouteControllerMinimumDistanceForContinueInstruction
    • RouteControllerMinimumDurationRemainingForProactiveRerouting
    • RouteControllerMinimumNumberLocationUpdatesBackwards
    • RouteControllerNumberOfSecondsForRerouteFeedback
    • RouteControllerProactiveReroutingInterval
    • RouteSnappingMinimumHorizontalAccuracy
    • RouteSnappingMinimumSpeed
    • NavigationSettings
  • User Feedback
    • FeedbackViewController
    • FeedbackViewControllerDelegate
    • FeedbackItem
    • FeedbackType
    • IncorrectVisualSubtype
    • ConfusingAudioSubtype
    • RouteQualitySubtype
    • IllegalRouteSubtype
    • RoadClosureSubtype
    • FeedbackSource
    • EndOfRouteFeedback
  • Other Classes
    • DispatchTimer
  • Other Enumerations
    • MBErrorCode
  • Other Extensions
    • Array
    • Bundle
    • CGPoint
    • CGSize
    • CLLocation
    • Dictionary
    • Locale
    • Measurement
    • NSAttributedString
    • – Key
    • Notification
    • – Name
    • String
    • UIApplication
    • – State
    • UIDevice
    • UIEdgeInsets
    • UIFont
    • UIWindow
  • Other Protocols
    • BimodalCache
    • BimodalDataCache
    • BimodalImageCache
    • NavigationMapInteractionObserver
    • NavigationStatusPresenter
    • PassiveLocationDataSourceDelegate
    • RouteVoiceControllerDelegate
    • StatusViewDelegate
    • StepsViewControllerDelegate
    • UnimplementedLogging
  • Other Type Aliases
    • ContainerViewController
    • IndexedRoute

Configuration

RouteController

  • RouteControllerDeadReckoningTimeInterval

    When calculating whether or not the user is on the route, we look where the user will be given their speed and this variable.

    Declaration

    Swift

    public var RouteControllerDeadReckoningTimeInterval: TimeInterval
    View Source on GitHub
  • RouteControllerMediumAlertInterval

    Number of seconds left on step when a AlertLevel.medium alert is emitted.

    Declaration

    Swift

    public var RouteControllerMediumAlertInterval: TimeInterval
    View Source on GitHub
  • RouteControllerHighAlertInterval

    Number of seconds left on step when a AlertLevel.high alert is emitted.

    Declaration

    Swift

    public var RouteControllerHighAlertInterval: TimeInterval
    View Source on GitHub
  • RouteControllerManeuverZoneRadius

    Radius in meters the user must enter to count as completing a step. One of two heuristics used to know when a user completes a step, see RouteControllerMaximumAllowedDegreeOffsetForTurnCompletion.

    Declaration

    Swift

    public var RouteControllerManeuverZoneRadius: CLLocationDistance
    View Source on GitHub
  • RouteControllerMaximumAllowedDegreeOffsetForTurnCompletion

    Threshold user must be in within to count as completing a step. One of two heuristics used to know when a user completes a step, see RouteControllerManeuverZoneRadius.

    The users heading and the finalHeading are compared. If this number is within RouteControllerMaximumAllowedDegreeOffsetForTurnCompletion, the user has completed the step.

    Declaration

    Swift

    public var RouteControllerMaximumAllowedDegreeOffsetForTurnCompletion: Double
    View Source on GitHub
  • RouteControllerMaximumDistanceBeforeRecalculating

    Maximum number of meters the user can travel away from step before RouteControllerShouldReroute is emitted.

    Declaration

    Swift

    public var RouteControllerMaximumDistanceBeforeRecalculating: CLLocationDistance
    View Source on GitHub
  • RouteControllerLinkedInstructionBufferMultiplier

    For shorter upcoming steps, we link the AlertLevel.high instruction. If the upcoming step duration is near the duration of RouteControllerHighAlertInterval, we need to apply a bit of a buffer to prevent back to back notifications.

    A multiplier of 1.2 gives us a buffer of 3 seconds, enough time insert a new instruction.

    Declaration

    Swift

    public let RouteControllerLinkedInstructionBufferMultiplier: Double
    View Source on GitHub
  • RouteControllerMinimumBacktrackingDistanceForRerouting

    The minimum distance in the opposite direction of travel that triggers rerouting.

    Declaration

    Swift

    public var RouteControllerMinimumBacktrackingDistanceForRerouting: CLLocationDistance
    View Source on GitHub
  • RouteControllerMinimumDistanceForContinueInstruction

    The minimum distance threshold used for giving a “Continue” type instructions.

    Declaration

    Swift

    public var RouteControllerMinimumDistanceForContinueInstruction: CLLocationDistance
    View Source on GitHub
  • RouteControllerMinimumDurationRemainingForProactiveRerouting

    Minimum duration remaining in seconds for proactive rerouting to be active.

    Declaration

    Swift

    public var RouteControllerMinimumDurationRemainingForProactiveRerouting: TimeInterval
    View Source on GitHub
  • RouteControllerMinimumNumberLocationUpdatesBackwards

    Minimum number of consecutive location updates moving backwards before the user is rerouted.

    Declaration

    Swift

    public var RouteControllerMinimumNumberLocationUpdatesBackwards: Int
    View Source on GitHub
  • RouteControllerNumberOfSecondsForRerouteFeedback

    Number of seconds reroute feedback sections are shown in the feedback view after the user is rerouted.

    Declaration

    Swift

    public var RouteControllerNumberOfSecondsForRerouteFeedback: TimeInterval
    View Source on GitHub
  • RouteControllerProactiveReroutingInterval

    The number of seconds between attempts to automatically calculate a more optimal route while traveling.

    In addition to calculating a more optimal route, RouteController also refreshes time-dependent statistics about the route, such as traffic congestion and the remaining duration, as long as DirectionsOptions.profileIdentifier is set to DirectionsProfileIdentifier.automobileAvoidingTraffic and RouteOptions.refreshingEnabled is set to true.

    Declaration

    Swift

    public var RouteControllerProactiveReroutingInterval: TimeInterval
    View Source on GitHub
  • RouteSnappingMinimumSpeed

    The minimum speed value before the user’s actual location can be considered over the snapped location.

    Declaration

    Swift

    public var RouteSnappingMinimumSpeed: CLLocationSpeed
    View Source on GitHub
  • NavigationSettings

    A wrapper for the UserDefaults class for navigation-specific settings.

    Properties are prefixed before they are stored in UserDefaults.standard.

    To specify criteria when calculating routes, use the NavigationRouteOptions class. To customize the user experience during a particular turn-by-turn navigation session, use the NavigationOptions class when initializing a NavigationViewController.

    See more

    Declaration

    Swift

    public class NavigationSettings
    View Source on GitHub

Route Snapping (CLLocation)

  • RouteSnappingMaxManipulatedCourseAngle

    Maximum angle the user puck will be rotated when snapping the user’s course to the route line.

    Declaration

    Swift

    public var RouteSnappingMaxManipulatedCourseAngle: CLLocationDirection
    View Source on GitHub
  • RouteControllerUserLocationSnappingDistance

    Accepted deviation excluding horizontal accuracy before the user is considered to be off route.

    Declaration

    Swift

    public var RouteControllerUserLocationSnappingDistance: CLLocationDistance
    View Source on GitHub
  • MBCongestionAttribute

    Attribute name for the route line that is used for identifying different CongestionLevel along the route.

    Declaration

    Swift

    public let MBCongestionAttribute: String
    View Source on GitHub
  • MBCurrentLegAttribute

    Attribute name for the route line that is used for identifying whether a RouteLeg is the current active leg.

    Declaration

    Swift

    public let MBCurrentLegAttribute: String
    View Source on GitHub
  • MBRouteLineWidthByZoomLevel

    A stop dictionary representing the default line widths of the route line by zoom level when NavigationMapViewDelegate.navigationMapView(_:routeStyleLayerWithIdentifier:source:) is undefined.

    You may use this constant in your implementation of NavigationMapViewDelegate.navigationMapView(_:routeStyleLayerWithIdentifier:source:) if you want to keep the default line widths but customize other aspects of the route line.

    Declaration

    Swift

    public let MBRouteLineWidthByZoomLevel: [Int : NSExpression]
    View Source on GitHub
  • NavigationMapViewMinimumDistanceForOverheadZooming

    The minium distance remaining on a route before overhead zooming is stopped.

    Declaration

    Swift

    public var NavigationMapViewMinimumDistanceForOverheadZooming: CLLocationDistance
    View Source on GitHub
  • NavigationViewMinimumVolumeForWarning

    The minimum volume for the device before a gentle warning is emitted when beginning navigation.

    Declaration

    Swift

    public let NavigationViewMinimumVolumeForWarning: Float
    View Source on GitHub
  • RouteControllerIncorrectCourseMultiplier

    Given a location update, the horizontalAccuracy is used to figure out how many consective location updates to wait before rerouting due to consecutive incorrect course updates.

    Declaration

    Swift

    public var RouteControllerIncorrectCourseMultiplier: Int
    View Source on GitHub
  • RouteControllerMaximumSpeedForUsingCurrentStep

    When calculating the user’s snapped location, this constant will be used for deciding upon which step coordinates to include in the calculation.

    Declaration

    Swift

    public var RouteControllerMaximumSpeedForUsingCurrentStep: CLLocationSpeed
    View Source on GitHub
  • RouteControllerMinNumberOfInCorrectCourses

    Minimum number of consecutive incorrect course updates before rerouting occurs.

    Declaration

    Swift

    public var RouteControllerMinNumberOfInCorrectCourses: Int
    View Source on GitHub
  • RouteSnappingMinimumHorizontalAccuracy

    Minimum Accuracy (maximum deviation, in meters) that the route snapping engine will accept before it stops snapping.

    Declaration

    Swift

    public var RouteSnappingMinimumHorizontalAccuracy: CLLocationAccuracy
    View Source on GitHub

© 2014–2020 Mapbox. See license for more details.

Generated by jazzy ♪♫ v0.13.5, a Realm project.