The Navigation SDK for iOS v2 is currently available as a release candidate for you to begin preparing for a production deployment.
For details on how v2 differs from v1 and guidance on migrating from v1 to the v2 public preview, see Upgrading from v1.x to v2.0.x.
The Navigation SDK for iOS allows you to build a complete navigation experience with the power of the Mapbox Directions API. You can build a complete turn-by-turn navigation UI inside your application using our pre-built components or use the core logic directly to build something truly custom.
The Navigation SDK provides a collection of features that are critical when building navigation projects, including:
- Navigation routes
- Accurate device location updates
- Voice instruction announcements
- Real-time user progress to their destination
- Off-route detection and rerouting
- Dynamic camera adjustments during turn-by-turn navigation
- Pre-built UI components to show changing navigation information
- Support for navigating with limited or no network connection
The Mapbox Navigation SDK is compatible with applications that are:
- Built in Xcode 12.4 or higer
- Written in Swift 5.3 or higher
- Run on iOS 11 or higher
The Mapbox Navigation SDK for iOS is designed to be used with several other Mapbox products.
The Navigation SDK uses the Mapbox Directions API to generate routes between two or more coordinates. The Mapbox Directions for Swift framework has many route options like setting a profile identifier (for example driving, driving with traffic, or walking), waypoint heading (to influence the direction in which a route will begin), and
roadClassesToAvoid (for example, avoiding tolls). Read more about Mapbox Directions for Swift in the API documentation.
By default, the Navigation SDK comes with access to the Mapbox Maps SDK for iOS. The Navigation SDK uses the Maps SDK to display routes on a map and show the user's location on the map throughout their trip to provide both navigation-related context and nearby places that may be of interest to the driver. The Navigation SDK v2 public preview uses the Maps SDK v10, which is in public beta. Read more in the Maps SDK v10 documentation.
If you use a Mapbox map in your application, you are required to provide attribution according to the Mapbox Maps SDK documentation.
The Mapbox Navigation SDK is distributed under Mapbox's Terms of Service.
Read more about pricing for the Navigation SDK in the pricing guide.