Version: 0.5.0

Introduction

The collection and utilization of end-user personal data is subject to a range of local privacy regulations, including the General Data Protection Regulation (GDPR). To assist integrators in adhering to these requirements, TomTom Automotive Navigation Application provides built-in support for implementing consent management via the VIL API Reference.

It is the integrator’s responsibility to collect consent from the user during onboarding, settings interaction, or any other appropriate touchpoint. This includes presenting a user interface that clearly informs the user about data usage, the types of data collected, and the implications of each consent level. The consent flow must meet applicable privacy regulations such as GDPR (EU) and CCPA (California), and must be designed and implemented by the integrator.

Once the user selects or updates their consent preferences, the integrator must communicate the selected consent level to TomTom Automotive Navigation Application using the VIL PrivacyManager API. This API is designed to register the user's choice so TomTom Automotive Navigation Application can adjust its feature behavior accordingly. First, you need to create an instance of VehicleIntegrationApiClient.

Then you can set the consent level. There are three consent levels to choose from: TELEMETRY_OFF, LOCATION_ONLY, and TELEMETRY_ON. The following example sets the consent level to TELEMETRY_ON:

1import com.tomtom.automotive.integration.vehicle.client.api.privacy.ConsentLevel
2import com.tomtom.automotive.integration.vehicle.client.api.privacy.PrivacyCallback
3import com.tomtom.automotive.integration.vehicle.client.api.privacy.PrivacyFailure
4import com.tomtom.automotive.integration.vehicle.client.api.privacy.PrivacyParameters
5import com.tomtom.automotive.integration.vehicle.common.Callback
6import com.tomtom.automotive.integration.vehicle.common.Result
7
8vehicleIntegrationApiClient.privacyManager.setPrivacy(
9 PrivacyParameters(ConsentLevel.TELEMETRY_ON),
10 object : PrivacyCallback {
11 override fun onResult(result: Result<Unit, out PrivacyFailure>?) {
12 when (result) {
13 is Result.Success<*> -> {
14 // Handle success if required
15 }
16 is Result.Failure<*> -> {
17 // Handle failure
18 }
19 }
20 }
21
22 override fun onFunctionalityUnavailable(reason: Callback.Reason) {
23 // Handle error
24 }
25 }
26)

Each time the consent level changes, the integrator must call the PrivacyManager API with the updated value. Based on the received consent level, TomTom Automotive Navigation Application will dynamically enable or disable certain features in real time, as outlined in the consent levels table above. In addition, TomTom Automotive Navigation Application requires the current consent state every time it starts up; the integrator must explicitly set this value via the VIL to ensure TomTom Automotive Navigation Application initializes correctly.

If the integrator does not explicitly provide a consent level, TomTom Automotive Navigation Application defaults to the most restrictive mode: Telemetry Off. In this state, TomTom Automotive Navigation Application assumes that the user has declined all data sharing.

Check runtime

The consent preference is used internally to determine whether specific actions requiring user data are permitted. For example, if a feature such as search feedback is invoked, ANA will first check this consent preference to ensure that the action is allowed.

Ensure that:

  • No user data is collected or transmitted unless explicitly permitted by the user.
  • Feature availability automatically reflects the current consent state, even across sessions or app restarts.

Telemetry Off (default)

When a user does not consent to sharing location or telemetry data, TomTom ANA does not collect or store any personal user information. Many of our services rely on real-time, user-generated data such as GPS probe data, active user input, and system analytics. These services include traffic flow, incidents, hazards, ETA prediction, live POIs (e.g., fuel prices, charging station availability), and EV range calculations. In line with TomTom’s fair-exchange principles, access to these services may be restricted if data sharing is declined, as the underlying systems require this data to function reliably. Without it, these services cannot provide accurate or up-to-date information. Please note: In current product releases, all services may still remain available regardless of consent. However, in future releases, the following services are expected to be disabled without user consent:

  • Real-time traffic flow
  • Traffic incidents and hazards
  • Traffic-aware routing
  • ETA prediction
  • Live POIs (e.g., parking availability, fuel prices)
  • EV range calculation