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

  1. Add the following to your settings.gradle file:

     maven { url = uri("https://artifactory.graphmasters.net/artifactory/libs-release") }
  2. Add the following dependency to your app's build.gradle file:

     implementation("net.graphmasters.multiplatform:nunav-sdk-android:<version>")

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.

Packages

Link copied to clipboard