nunav-sdk-android
Full turn-by-turn navigation inside your app – highly customizable for your users.
Overview
Integrate the a turn-by-turn navigation directly into your app instead of handing it over to the ystem apps and keep control over the user experience. The NUNAV Navigation SDK offers you a completely finished UI with map, maneuver and route information.
Getting started
To start navigations using the SDK you need an API key for accessing the NUNAV Technology provided by Graphmasters GmbH. For trial use this is free of charge. Further you have to add the SDK as a dependency to your project.
1. Request an API Key
To request an API key, visit the official product page of the NUNAV Navigation SDK.
2. Add the dependency
Add the following to your settings.gradle file:
maven { url = uri("https://artifactory.graphmasters.net/artifactory/libs-release") }
Content copied to clipboardAdd the following dependency to your app's build.gradle file:
implementation("net.graphmasters.multiplatform:nunav-sdk-android:<version>")
Content copied to clipboard
The current version is 2.0.3
(March 2025).
3. Configure the NUNAV Navigation SDK
Initialize the NunavSdk with your API-Key. This only needs to happen once and must happen before starting a navigation.
NunavSdk.initialize(context, "<your-api-key>")
Optionally you can configure the NUNAV Navigation SDK with a custom service URL. This is only needed if you are using a custom NUNAV routing. To learn more about custom NUNAV routing please contact Graphmasters.
NunavSdk.initialize(context, "<your-api-key>", "<service-url>")
4. Request location permission
Grant the following runtime permission. Check the official Android Documentation for more information.
Manifest.permission.ACCESS_FINE_LOCATION
Manifest.permission.ACCESS_COARSE_LOCATION
Manifest.permission.POST_NOTIFICATIONS
5. Start Navigation
To start the navigation you must pass a destination to the SDK. This can be done by calling the startNavigation
method on the NunavSdk
instance.
NunavSdk.startNavigation(
context = context,
latitude = 52.376169,
longitude = 9.741784
)
Configuration guide
Get an overview the custom configuration options for the NUNAV Navigation SDK. The NUNAV Navigation SDK gives you different options to configure the navigation for your app’s users.
Configure the Destination
The easiest way is to use the DestinationConfiguration
. This configuration is used to set the destination for the navigation. The SDK will then calculate the route and start the navigation. Additionally you can set a id
for the server to identify the destination and a label
for the user to identify the destination correctly. See DestinationConfiguration
for more information.
Configure the Routing
The SDK allows you to configure custom routing for the navigation. You can set the transportMode
, additional options like net.graphmasters.nunavsdk.RoutingConfiguration.avoidTollRoads and optionally a contextToken
for custom routing decided by the server. See RoutingConfiguration
and TransportMode
for more information.