GoogleNavigation Framework Reference

  • GMSNavigationStepInfo provides detailed information for each step of a navigation route, including instructions, road names, maneuver details, and lane guidance.

  • It offers visual aids through maneuver and lane images, customizable via GMSNavigationStepInfoImageOptions.

  • This class includes properties like fullInstructionText for comprehensive instructions, simpleRoadName for concise road identification, and distanceFromPrevStepMeters for step length.

  • Information specific to roundabout navigation is provided by roundaboutTurnNumber and general route context is available through drivingSide.

  • Each step is tracked by stepNumber, starting at 0 for the first step in the route, and estimated travel time is provided via timeFromPrevStepSeconds.

GMSNavigationStepInfo

@interface GMSNavigationStepInfo : NSObject

Information about a single step along a navigation route.

  • The GMSNavigationManeuver for this step.

    Declaration

    Swift

    var maneuver: GMSNavigationManeuver { get }

    Objective-C

    @property (nonatomic, readonly) GMSNavigationManeuver maneuver;
  • The UIImage for the maneuver of this step using provided options. Default options values will be used if the options parameter is nil.

    Declaration

    Swift

    func maneuverImage(with options: GMSNavigationStepInfoImageOptions?) -> UIImage?

    Objective-C

    - (nullable UIImage *)maneuverImageWithOptions:
        (nullable GMSNavigationStepInfoImageOptions *)options;

    Return Value

    nil if there is no maneuver image for this step.

  • The different available lanes for this step.

    The array is ordered such that the first lane is on the left and last lane is on the right regardless of driving side.

    Declaration

    Swift

    var lanes: [GMSNavigationLane]? { get }

    Objective-C

    @property (nonatomic, readonly, nullable) NSArray<GMSNavigationLane *> *lanes;

    Return Value

    nil if there is no lane guidance for this step.

  • The UIImage for the lane guidance of this step using provided options. Default options values will be used if the options parameter is nil.

    Declaration

    Swift

    func lanesImage(with options: GMSNavigationStepInfoImageOptions?) -> UIImage?

    Objective-C

    - (nullable UIImage *)lanesImageWithOptions:
        (nullable GMSNavigationStepInfoImageOptions *)options;

    Return Value

    nil if there is no lane guidance for this step.

  • The full road name for this step containing all information for the road including direction.

    Examples (each line is a separate example):

    Lean Ave

    CA-85 / Mtn View

    Exit 9A / North First Street

    Declaration

    Swift

    var fullRoadName: String { get }

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull fullRoadName;
  • The simplified version of the road name. This is shorter than the full road name and may not contain all pieces of identifying information about the road such as direction or name of exit.

    Examples (each line is a separate example):

    Lean Ave

    CA-85

    Exit 9A

    Declaration

    Swift

    var simpleRoadName: String { get }

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull simpleRoadName;
  • The full text of the instruction for this step.

    Examples (each line is a separate example):

    Turn left onto Lean Ave.

    Use the right lane to take the CA-85 ramp to Mtn View.

    Use the 2nd from the right lane to take exit 9A toward North First Street.

    Declaration

    Swift

    var fullInstructionText: String { get }

    Objective-C

    @property (nonatomic, readonly) NSString *_Nonnull fullInstructionText;
  • Exit number of this step if it exists.

    Declaration

    Swift

    var exitNumber: String? { get }

    Objective-C

    @property (nonatomic, readonly, nullable) NSString *exitNumber;
  • Whether this step is on a drive-on-right or drive-on-left route.

    Declaration

    Swift

    var drivingSide: GMSNavigationDrivingSide { get }

    Objective-C

    @property (nonatomic, readonly) GMSNavigationDrivingSide drivingSide;
  • The counted number of the exit to take relative to the location where the roundabout was entered. Only set for roundabouts, otherwise -1.

    Declaration

    Swift

    var roundaboutTurnNumber: Int { get }

    Objective-C

    @property (nonatomic, readonly) NSInteger roundaboutTurnNumber;
  • The index of the step in the list of all steps in the route. The first step has step number 0.

    Declaration

    Swift

    var stepNumber: Int { get }

    Objective-C

    @property (nonatomic, readonly) NSInteger stepNumber;
  • The total distance of this step. This value does not change.

    Declaration

    Swift

    var distanceFromPrevStepMeters: CLLocationDistance { get }

    Objective-C

    @property (nonatomic, readonly) CLLocationDistance distanceFromPrevStepMeters;
  • The estimated time it takes to complete this step. This value does not change.

    Declaration

    Swift

    var timeFromPrevStepSeconds: TimeInterval { get }

    Objective-C

    @property (nonatomic, readonly) NSTimeInterval timeFromPrevStepSeconds;
  • Unavailable

    Declaration

    Objective-C

    - (null_unspecified instancetype)init NS_UNAVAILABLE;