Mapbox Navigation SDK for Android


prod-release-1.0-beta.2 (Mar 24, 2020)
Apr 7, 2017
Mar 29, 2020
Mapbox (mapbox)
Pablo Guardiola (Guardiola31337)
Sarah Lensing (sarahlensing)
Cameron Mace (cammace)
Antonio Zugaldia (zugaldia)
Konstantin Käfer (kkaefer)
Minh Nguyễn (1ec5)
Tobrun (tobrun)
Dane Springmeyer (springmeyer)
Łukasz Paczos (LukasPaczos)
Fredrik Karlsson (frederoni)
Langston Smith (langsmith)
Eric Wolfe (ericrwolfe)
Dan Nesfeder (danesfeder)
Devota Aabel (devotaaabel)
Anthony Agby (electrostat)
Adrien Denat (Grsmto)
Kalimar Maia (kalimar)
Kartik Kwatra (Kartik2016)
Show all (33)33
Source code
APK file


When your users want to get from one location to another, don’t push them out of your application into a generic map application. Instead, keep them engaged with your application 100% of the time with in-app turn-by-turn navigation.

The Mapbox Navigation SDK for Android is built on top of the Mapbox Directions API and contains logic needed to get timed navigation instructions.

The Mapbox Navigation SDK is a precise and flexible platform which enables your users to explore the world's streets. We are designing new maps specifically for navigation that highlight traffic conditions and helpful landmarks. The calculations use the user's current location and compare it to the current route that the user's traversing to provide critical information at any given moment. You control the entire experience, from the time your user chooses a destination to when they arrive.

Getting Started

If you are looking to include this inside your project, please take a look at the detailed instructions found in our docs. If you are interested in building from source, read the contributing guide inside this project.

Add this snippet to your build.gradle file to use this SDK (libandroid-navigation):

implementation 'com.mapbox.mapboxsdk:mapbox-android-navigation:0.42.6'

And for libandroid-navigation-ui:

implementation 'com.mapbox.mapboxsdk:mapbox-android-navigation-ui:0.42.6'

Note: When using the UI library, you do not need to add both dependencies. The UI library will automatically pull in libandroid-navigation.

Important Note: You must include the following snippet in your top project-level build.gradle file:

repositories {
    maven { url '' }

This will ensure the mapbox dependency is properly downloaded.

To run the sample code on a device or emulator, include your developer access token in developer-config.xml found in the project.


You'll find all of the documentation for this SDK on our Mapbox Navigation page. This includes information on installation, using the API, and links to the API reference.

Getting Help

  • Need help with your code?: Look for previous questions on the #mapbox tag — or ask a new question.
  • Have a bug to report? Open an issue. If possible, include the version of Mapbox Services, a full log, and a project that shows the issue.
  • Have a feature request? Open an issue. Tell us what the feature should do and why you want the feature.

Using Snapshots

If you want to test recent bug fixes or features that have not been packaged in an official release yet, you can use a -SNAPSHOT release of the current development version of the Mapbox Navigation SDK via Gradle, available on Sonatype.

repositories {
    maven { url "" }

dependencies {
    implementation 'com.mapbox.mapboxsdk:mapbox-android-navigation:0.43.0-SNAPSHOT'

Sample code

We've added several navigation examples to this repo's test app to help you get started with the SDK and to inspire you.


We welcome feedback, translations, and code contributions! Please see for details.

License of Dependencies

This SDK uses Mapbox Navigator, a private binary, as a dependency. The Mapbox Navigator binary may be used with a Mapbox account and under the Mapbox TOS. If you do not wish to use this binary, make sure you swap out this dependency in libandroid-navigation/build.gradle. Code in this repo falls under the MIT license.