Skip navigation links
API Specification for the NavApp SDK.

See: Description

Packages 
Package Description
com.tomtom.navapp
Contains all the classes for the NavApp SDK.
API Specification for the NavApp SDK.

Overview

The NavApp SDK consists of a group of interfaces accessed through the NavAppClient class.

Getting Started

NavAppClient jar

Copy the navappclient.jar into your application's /libs/ folder.

The NavAppClient

To use the NavApp SDK you need to create an instance of the NavAppClient, using the NavAppClient.Factory.make(Context, ErrorCallback) method. The returned instance is used to access the individual APIs.

As instantiating the NavAppClient requires some background initialisation, the NavAppClient should preferably be created once per application, e.g. in the Activity onCreate callback. Once this call returns the NavAppClient instance is ready to use.

Note that if any error occurs and a callback to ErrorCallback is received, the NavAppClient instance can no longer be used (any outstanding calls are lost), and any subsequent calls are no-ops.

protected void onCreate(Bundle savedInstanceState) {
    // Instantiate the NavAppClient passing in a Context and an ErrorCallback.
    mNavappClient = NavAppClient.Factory.make(this, mErrorCallback);
}

And closed in the the Activity onDestroy callback, using NavAppClient.close()

protected void onDestroy() {
    mNavappClient.close();
}

Accessing the APIs

The NavAppClient instance can then be used to access the APIs.

Note that:
Example retrieving the information about the currently selected map:


mSDKUtils = mNavappClient.getUtils();

mSDKUtils.getMapInfo(mMapInfoListener);

private MapInfo.Listener mMapInfoListener = new MapInfo.Listener() {
    public void onMapInfo(MapInfo mapInfo) {
        Log.d(TAG, "name: " + mapInfo.getName() + 
                   "releaseNumber: " + mapInfo.getReleaseNumber() +
                   "releaseDate: " + mapInfo.getReleaseDate() +
                   "buildNumber: " + mapInfo.getBuildNumber() +
                   "locationPath: " + mapInfo.getLocationPath());
    }
};


Or planning a trip:


mTripManager = mNavappClient.getTripManager();

final Routeable destination = mNavappClient.makeRouteable(DESTINATION_LATITUDE, DESTINATION_LONGITUDE);
mTripManager.planTrip(destination, mPlanListener);

private Trip.PlanListener mPlanListener = new Trip.PlanListener() {
    public void onTripPlanResult(Trip trip, PlanResult result) {
        Log.d(TAG, "onTripPlanResult result["+result+"]");
        // save the created trip
        mTrip = trip;
    }
};


Sample application

A sample applications using the SDK can be found here SDK/android/sample/SDKTestApp

API Level

API Level is an integer value that uniquely identifies the framework API revision offered by a version of the SDK. Each API in the SDK is marked with a API level denoting in which version this API was introduced. Note the API level does not denote the SDK release version, but only the implemented and supported APIs. If the version is 'unreleased' the API is not yet frozen and might change in subsequent releases.

See Build.Version.API_LEVEL for the current version of the client library.

Skip navigation links