Navigation SDK is currently available only to select customers. Contact sales to learn more.

GMSNavigationTypes

Stay organized with collections Save and categorize content based on your preferences.
GMSNavigationTypes

Enumerations

enum  GMSNavigationCameraMode { GMSNavigationCameraModeFree = 0, GMSNavigationCameraModeFollowing, GMSNavigationCameraModeOverview }
 The camera mode which determines the camera following behavior. More...
enum  GMSNavigationCameraPerspective { GMSNavigationCameraPerspectiveTilted = 0, GMSNavigationCameraPerspectiveTopDownNorthUp, GMSNavigationCameraPerspectiveTopDownHeadingUp }
 The different camera perspectives that can be set when following the user location. More...
enum  GMSNavigationTravelMode {
  GMSNavigationTravelModeDriving = 0, GMSNavigationTravelModeCycling, GMSNavigationTravelModeWalking, GMSNavigationTravelModeTwoWheeler,
  GMSNavigationTravelModeTaxicab
}
 The different travel modes that can be used for navigation. More...
enum  GMSNavigationVoiceGuidance { GMSNavigationVoiceGuidanceSilent = 0, GMSNavigationVoiceGuidanceAlertsOnly, GMSNavigationVoiceGuidanceAlertsAndGuidance }
 Determines whether voice guidance is played under certain circumstances. More...
enum  GMSVoiceGuidanceAudioDeviceType { GMSVoiceGuidanceAudioDeviceTypeBuiltInOnly = 0, GMSVoiceGuidanceAudioDeviceTypeBluetooth }
 Determines what type of audio devices voice guidance may be played through. More...
enum  GMSRouteStatus {
  GMSRouteStatusInternalError = 0, GMSRouteStatusOK, GMSRouteStatusNoRouteFound, GMSRouteStatusNetworkError,
  GMSRouteStatusQuotaExceeded, GMSRouteStatusAPIKeyNotAuthorized, GMSRouteStatusCanceled, GMSRouteStatusDuplicateWaypointsError,
  GMSRouteStatusNoWaypointsError, GMSRouteStatusLocationUnavailable, GMSRouteStatusWaypointError, GMSRouteStatusTravelModeUnsupported
}
 A GMSRouteStatus is a status code that represents the result of a route request. More...
enum  GMSNavigationLightingMode { GMSNavigationLightingModeNormal = 0, GMSNavigationLightingModeLowLight }
 Lighting mode is used to specify different color schemes based on available light. More...
enum  GMSNavigationRoutingStrategy { GMSNavigationRoutingStrategyDefaultBest = 0, GMSNavigationRoutingStrategyShorter, GMSNavigationRoutingStrategyDeltaToTargetDistance }
 The routing strategy specifies how routes are ranked, which affects the route when it is chosen and during re-routing. More...
enum  GMSNavigationRouteCalloutFormat { GMSNavigationRouteCalloutFormatDefault = 0, GMSNavigationRouteCalloutFormatTime, GMSNavigationRouteCalloutFormatDistance }
 The format specifies whether to show distance or ETA information in route callouts. More...
enum  GMSNavigationAlternateRoutesStrategy { GMSNavigationAlternateRoutesStrategyAll = 0, GMSNavigationAlternateRoutesStrategyNone, GMSNavigationAlternateRoutesStrategyOne }
 Indicates the maximum number of alternate routes that can be requested. More...
enum  GMSNavigationSpeedAlertSeverity { GMSNavigationSpeedAlertSeverityUnknown = -2, GMSNavigationSpeedAlertSeverityNotSpeeding = -1, GMSNavigationSpeedAlertSeverityMinor = 0, GMSNavigationSpeedAlertSeverityMajor }
enum  GMSNavigationMapStyle { GMSNavigationMapStyleDefault = 0, GMSNavigationMapStyleHighDetail = 1 }
 The map style during navigation. More...
enum  GMSNavigationNavState { GMSNavigationNavStateUnknown = 0, GMSNavigationNavStateEnroute = 1, GMSNavigationNavStateRerouting = 2, GMSNavigationNavStateStopped = 3 }
 The state of navigation. More...
enum  GMSNavigationDrivingSide { GMSNavigationDrivingSideNone = 0, GMSNavigationDrivingSideLeft = 1, GMSNavigationDrivingSideRight = 2 }
 Whether this step is on a drive-on-right or drive-on-left route. More...
enum  GMSNavigationManeuver {
  GMSNavigationManeuverUnknown = 0, GMSNavigationManeuverDepart = 1, GMSNavigationManeuverDestination = 2, GMSNavigationManeuverDestinationLeft = 3,
  GMSNavigationManeuverDestinationRight = 4, GMSNavigationManeuverStraight = 5, GMSNavigationManeuverTurnLeft = 6, GMSNavigationManeuverTurnRight = 7,
  GMSNavigationManeuverTurnKeepLeft = 8, GMSNavigationManeuverTurnKeepRight = 9, GMSNavigationManeuverTurnSlightLeft = 10, GMSNavigationManeuverTurnSlightRight = 11,
  GMSNavigationManeuverTurnSharpLeft = 12, GMSNavigationManeuverTurnSharpRight = 13, GMSNavigationManeuverTurnUTurnClockwise = 14, GMSNavigationManeuverTurnUTurnCounterClockwise = 15,
  GMSNavigationManeuverMergeUnspecified = 16, GMSNavigationManeuverMergeLeft = 17, GMSNavigationManeuverMergeRight = 18, GMSNavigationManeuverForkLeft = 19,
  GMSNavigationManeuverForkRight = 20, GMSNavigationManeuverOnRampUnspecified = 21, GMSNavigationManeuverOnRampLeft = 22, GMSNavigationManeuverOnRampRight = 23,
  GMSNavigationManeuverOnRampKeepLeft = 24, GMSNavigationManeuverOnRampKeepRight = 25, GMSNavigationManeuverOnRampSlightLeft = 26, GMSNavigationManeuverOnRampSlightRight = 27,
  GMSNavigationManeuverOnRampSharpLeft = 28, GMSNavigationManeuverOnRampSharpRight = 29, GMSNavigationManeuverOnRampUTurnClockwise = 30, GMSNavigationManeuverOnRampUTurnCounterClockwise = 31,
  GMSNavigationManeuverOffRampUnspecified = 32, GMSNavigationManeuverOffRampLeft = 33, GMSNavigationManeuverOffRampRight = 34, GMSNavigationManeuverOffRampKeepLeft = 35,
  GMSNavigationManeuverOffRampKeepRight = 36, GMSNavigationManeuverOffRampSlightLeft = 37, GMSNavigationManeuverOffRampSlightRight = 38, GMSNavigationManeuverOffRampSharpLeft = 39,
  GMSNavigationManeuverOffRampSharpRight = 40, GMSNavigationManeuverOffRampUTurnClockwise = 41, GMSNavigationManeuverOffRampUTurnCounterClockwise = 42, GMSNavigationManeuverRoundaboutClockwise = 43,
  GMSNavigationManeuverRoundaboutCounterClockwise = 44, GMSNavigationManeuverRoundaboutStraightClockwise = 45, GMSNavigationManeuverRoundaboutStraightCounterClockwise = 46, GMSNavigationManeuverRoundaboutLeftClockwise = 47,
  GMSNavigationManeuverRoundaboutLeftCounterClockwise = 48, GMSNavigationManeuverRoundaboutRightClockwise = 49, GMSNavigationManeuverRoundaboutRightCounterClockwise = 50, GMSNavigationManeuverRoundaboutSlightLeftClockwise = 51,
  GMSNavigationManeuverRoundaboutSlightLeftCounterClockwise = 52, GMSNavigationManeuverRoundaboutSlightRightClockwise = 53, GMSNavigationManeuverRoundaboutSlightRightCounterClockwise = 54, GMSNavigationManeuverRoundaboutSharpLeftClockwise = 55,
  GMSNavigationManeuverRoundaboutSharpLeftCounterClockwise = 56, GMSNavigationManeuverRoundaboutSharpRightClockwise = 57, GMSNavigationManeuverRoundaboutSharpRightCounterClockwise = 58, GMSNavigationManeuverRoundaboutUTurnClockwise = 59,
  GMSNavigationManeuverRoundaboutUTurnCounterClockwise = 60, GMSNavigationManeuverRoundaboutExitClockwise = 61, GMSNavigationManeuverRoundaboutExitCounterClockwise = 62, GMSNavigationManeuverFerryBoat = 63,
  GMSNavigationManeuverFerryTrain = 64, GMSNavigationManeuverNameChange = 65
}
 A set of values that specify the navigation action to take. More...

Enumeration Type Documentation

The camera mode which determines the camera following behavior.

Enumerator:
GMSNavigationCameraModeFree 

Disables camera following.

The camera is in this mode when it is being panned by the user.

GMSNavigationCameraModeFollowing 

Follows the user location with the current followingPerspective.

GMSNavigationCameraModeOverview 

Shows an overview of the remaining route.

This is dynamically updated in guidance mode.

The different camera perspectives that can be set when following the user location.

Enumerator:
GMSNavigationCameraPerspectiveTilted 

The camera automatically rotates to face the user bearing and is tilted.

When guidance is inactive, the user location is positioned at the center of the viewport. When guidance is active, the user location is positioned near the bottom of the viewport.

GMSNavigationCameraPerspectiveTopDownNorthUp 

The camera is always oriented north and looks directly downwards.

The user location is positioned at the center of the screen.

GMSNavigationCameraPerspectiveTopDownHeadingUp 

The camera automatically rotates to face the user bearing and looks directly downwards.

When guidance is inactive, the user location is positioned at the center of the viewport. When guidance is active, the user location is positioned near the bottom of the viewport.

The different travel modes that can be used for navigation.

Enumerator:
GMSNavigationTravelModeDriving 

Driving routes will be fetched, and the reported user course will be based on the direction of movement.

GMSNavigationTravelModeCycling 

Cycling routes will be fetched, and the reported user course will be based on the compass direction the device is facing.

GMSNavigationTravelModeWalking 

Walking routes will be fetched, and the reported user course will be based on the compass direction the device is facing.

GMSNavigationTravelModeTwoWheeler 

Two-wheeler routes will be fetched, and the reported user course will be based on the direction of movement.

GMSNavigationTravelModeTaxicab 

Taxicab routes will be fetched, and the reported user course will be based on the direction of movement.

Determines whether voice guidance is played under certain circumstances.

Enumerator:
GMSNavigationVoiceGuidanceSilent 

Disables voice guidance.

GMSNavigationVoiceGuidanceAlertsOnly 

Enables voice guidance for traffic alerts only.

GMSNavigationVoiceGuidanceAlertsAndGuidance 

Enables voice guidance for both turn-by-turn guidance and alerts.

Determines what type of audio devices voice guidance may be played through.

Enumerator:
GMSVoiceGuidanceAudioDeviceTypeBuiltInOnly 

Voice guidance plays only through the built-in device speaker or headphones.

GMSVoiceGuidanceAudioDeviceTypeBluetooth 

Voice guidance plays over a bluetooth connection if available, else it uses the built-in device speaker or headphones.

A GMSRouteStatus is a status code that represents the result of a route request.

Enumerator:
GMSRouteStatusInternalError 

A route could not be calculated because of an internal error.

GMSRouteStatusOK 

A route to the destination was successfully calculated.

GMSRouteStatusNoRouteFound 

A route to the destination could not be calculated.

GMSRouteStatusNetworkError 

A route to the destination could not be calculated because of a network error.

GMSRouteStatusQuotaExceeded 

A route to the destination could not be calculated because of insufficient quota.

GMSRouteStatusAPIKeyNotAuthorized 

A route could not be calculated because the provided key does not have permission to use the Navigation SDK.

GMSRouteStatusCanceled 

The route calculation was canceled in favor of a newer one.

GMSRouteStatusDuplicateWaypointsError 

A route could not be calculated because there were duplicate waypoints present in the request.

GMSRouteStatusNoWaypointsError 

A route could not be calculated because no waypoints were provided.

GMSRouteStatusLocationUnavailable 

A route could not be calculated because the user's location is not available.

This could be because the user hasn't granted location permissions for the app.

GMSRouteStatusWaypointError 

A route could not be generated because there was a problem with the waypoints provided in the request.

For example, a stale or invalid Place ID may have been provided.

GMSRouteStatusTravelModeUnsupported 

A route could not be generated if given an unsupported travel mode.

For example, if you are setting destinations with a route token, only Driving and TwoWheeler travel mode are supported.

Lighting mode is used to specify different color schemes based on available light.

Enumerator:
GMSNavigationLightingModeNormal 

Use a lighting mode suitable for daylight viewing.

GMSNavigationLightingModeLowLight 

Use a lighting mode suitable for night viewing.

The routing strategy specifies how routes are ranked, which affects the route when it is chosen and during re-routing.

The default value is GMSNavigationRoutingStrategyDefaultBest.

Enumerator:
GMSNavigationRoutingStrategyDefaultBest 

Ranks routes by NavSDK default cost model.

This is the default routing strategy for navigating.

GMSNavigationRoutingStrategyShorter 

Ranks routes by distance.

The highest ranking route is the shortest of those returned.

GMSNavigationRoutingStrategyDeltaToTargetDistance 

Ranks routes by absolute delta to a target distance, from smallest to largetest.

The format specifies whether to show distance or ETA information in route callouts.

Enumerator:
GMSNavigationRouteCalloutFormatDefault 

Shows the time or distance, depending on the routing strategy.

Shows time with the default best routing strategy and distance with the shorter routing strategy.

GMSNavigationRouteCalloutFormatTime 

Shows time information in route callouts (e.g., 10 min, 5 min faster).

GMSNavigationRouteCalloutFormatDistance 

Shows distance information in route callouts (e.g., 10 km, 5 km longer).

Indicates the maximum number of alternate routes that can be requested.

Enumerator:
GMSNavigationAlternateRoutesStrategyAll 

All available alternate routes should be shown.

GMSNavigationAlternateRoutesStrategyNone 

No alternate routes should be shown.

GMSNavigationAlternateRoutesStrategyOne 

One alternate route should be shown.

Enumerator:
GMSNavigationSpeedAlertSeverityUnknown 

Either speed or speed limit could not be determined.

GMSNavigationSpeedAlertSeverityNotSpeeding 

No speeding is occurring.

GMSNavigationSpeedAlertSeverityMinor 

Minor speed alert.

GMSNavigationSpeedAlertSeverityMajor 

Major speed alert.

The map style during navigation.

Enumerator:
GMSNavigationMapStyleDefault 

Default base map style.

No extra elements.

GMSNavigationMapStyleHighDetail 

Map style with some extra detailed elements, including 2D building outlines on zoom level 18+ and 2D building numbers on zoom level 19+.

The state of navigation.

Enumerator:
GMSNavigationNavStateUnknown 

Error or unspecified state.

GMSNavigationNavStateEnroute 

Actively navigating.

Information about the upcoming maneuver step is available.

GMSNavigationNavStateRerouting 

Actively navigating but searching for a new route.

The upcoming maneuver step is not yet available.

GMSNavigationNavStateStopped 

Navigation has ended.

Whether this step is on a drive-on-right or drive-on-left route.

May be unspecified.

Enumerator:
GMSNavigationDrivingSideNone 

Unspecified side.

GMSNavigationDrivingSideLeft 

Drive-on-left side.

GMSNavigationDrivingSideRight 

Drive-on-right side.

A set of values that specify the navigation action to take.

Enumerator:
GMSNavigationManeuverUnknown 

Unknown maneuver.

GMSNavigationManeuverDepart 

Starting point of the maneuver.

GMSNavigationManeuverDestination 

Arrival at a destination.

GMSNavigationManeuverDestinationLeft 

Arrival at a destination located on the left side of the road.

GMSNavigationManeuverDestinationRight 

Arrival at a destination located on the right side of the road.

GMSNavigationManeuverStraight 

Continue straight.

GMSNavigationManeuverTurnLeft 

Starting point of the maneuver.

GMSNavigationManeuverTurnRight 

Regular right turn at an intersection.

GMSNavigationManeuverTurnKeepLeft 

Keep left as the road diverges.

GMSNavigationManeuverTurnKeepRight 

Keep right as the road diverges.

GMSNavigationManeuverTurnSlightLeft 

Slight left turn at an intersection.

GMSNavigationManeuverTurnSlightRight 

Slight right turn at an intersection.

GMSNavigationManeuverTurnSharpLeft 

Sharp left turn at an intersection.

GMSNavigationManeuverTurnSharpRight 

Sharp right turn at an intersection.

GMSNavigationManeuverTurnUTurnClockwise 

Clockwise turn onto the opposite side of the street.

GMSNavigationManeuverTurnUTurnCounterClockwise 

Counterclockwise turn onto the opposite side of the street.

GMSNavigationManeuverMergeUnspecified 

Current road joins another.

GMSNavigationManeuverMergeLeft 

Current road joins another on the left.

GMSNavigationManeuverMergeRight 

Current road joins another on the right.

GMSNavigationManeuverForkLeft 

Current road joins another road slightly on the left.

GMSNavigationManeuverForkRight 

Current road joins another road slightly on the right.

GMSNavigationManeuverOnRampUnspecified 

Enter a turnpike or freeway.

GMSNavigationManeuverOnRampLeft 

Regular left turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampRight 

Regular right turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampKeepLeft 

Keep to the left side of the road when entering a turnpike or freeway as the road diverges.

GMSNavigationManeuverOnRampKeepRight 

Keep to the right side of the road when entering a turnpike or freeway as the road diverges.

GMSNavigationManeuverOnRampSlightLeft 

Slight left turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampSlightRight 

Slight right turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampSharpLeft 

Sharp left turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampSharpRight 

Sharp right turn to enter a turnpike or freeway.

GMSNavigationManeuverOnRampUTurnClockwise 

Clockwise turn onto the opposite side of the street to enter a turnpike or freeway.

GMSNavigationManeuverOnRampUTurnCounterClockwise 

Counterclockwise turn onto the opposite side of the street to enter a turnpike or freeway.

GMSNavigationManeuverOffRampUnspecified 

Exit a turnpike or freeway.

GMSNavigationManeuverOffRampLeft 

Regular left turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampRight 

Regular right turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampKeepLeft 

Keep to the left side of the road when exiting a turnpike or freeway as the road diverges.

GMSNavigationManeuverOffRampKeepRight 

Keep to the right side of the road when exiting a turnpike or freeway as the road diverges.

GMSNavigationManeuverOffRampSlightLeft 

Slight left turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampSlightRight 

Slight right turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampSharpLeft 

Sharp left turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampSharpRight 

Sharp right turn to exit a turnpike or freeway.

GMSNavigationManeuverOffRampUTurnClockwise 

Clockwise turn onto the opposite side of the street to exit a turnpike or freeway.

GMSNavigationManeuverOffRampUTurnCounterClockwise 

Counterclockwise turn onto the opposite side of the street to exit a turnpike or freeway.

GMSNavigationManeuverRoundaboutClockwise 

Enter a roundabout in the clockwise direction.

GMSNavigationManeuverRoundaboutCounterClockwise 

Enter a roundabout in the counterclockwise direction.

GMSNavigationManeuverRoundaboutStraightClockwise 

Enter a roundabout in the clockwise direction and continue straight.

GMSNavigationManeuverRoundaboutStraightCounterClockwise 

Enter a roundabout in the counterclockwise direction and continue straight.

GMSNavigationManeuverRoundaboutLeftClockwise 

Enter a roundabout in the clockwise direction and turn left.

GMSNavigationManeuverRoundaboutLeftCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn left.

GMSNavigationManeuverRoundaboutRightClockwise 

Enter a roundabout in the clockwise direction and turn right.

GMSNavigationManeuverRoundaboutRightCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn right.

GMSNavigationManeuverRoundaboutSlightLeftClockwise 

Enter a roundabout in the clockwise direction and turn slightly left.

GMSNavigationManeuverRoundaboutSlightLeftCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn slightly to the left.

GMSNavigationManeuverRoundaboutSlightRightClockwise 

Enter a roundabout in the clockwise direction and turn slightly to the right.

GMSNavigationManeuverRoundaboutSlightRightCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn slightly to the right.

GMSNavigationManeuverRoundaboutSharpLeftClockwise 

Enter a roundabout in the clockwise direction and turn sharply to the left.

GMSNavigationManeuverRoundaboutSharpLeftCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn sharply to the left.

GMSNavigationManeuverRoundaboutSharpRightClockwise 

Enter a roundabout in the clockwise direction and turn sharply to the right.

GMSNavigationManeuverRoundaboutSharpRightCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn sharply to the right.

GMSNavigationManeuverRoundaboutUTurnClockwise 

Enter a roundabout in the clockwise direction and turn clockwise onto the opposite side of the street.

GMSNavigationManeuverRoundaboutUTurnCounterClockwise 

Enter a roundabout in the counterclockwise direction and turn counterclockwise onto the opposite side of the street.

GMSNavigationManeuverRoundaboutExitClockwise 

Exit a roundabout in the clockwise direction.

GMSNavigationManeuverRoundaboutExitCounterClockwise 

Exit a roundabout in the counterclockwise direction.

GMSNavigationManeuverFerryBoat 

Take the boat ferry.

GMSNavigationManeuverFerryTrain 

Take the train ferry.

GMSNavigationManeuverNameChange 

The street name changes.