Release Notes

version 0.48.0 - 20/02/2024

General

Deprecations

  • Deprecate the com.tomtom.sdk.vehicle.ConnectorType.type property.
  • Deprecate the com.tomtom.sdk.vehicle.CurrentType.type property.

New features

  • Add HTTP-core with interceptor support.

Fixes

  • Do not throw NullPointerException when trying to convert android.location.Location to com.tomtom.sdk.location.GeoLocation in com.tomtom.sdk.common.android.LocationMapper when Location.getProvider() returns null.

Map

Updates

  • com.tomtom.sdk.map.display.style.DRIVING_LANE_LEVEL is now available as Experimental API.
  • Enable off-route traffic flow and incidents for the premium map display engine.

Breaking changes

  • Remove com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdateConfig.AutomaticUpdatesConfiguration. Rename com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdateConfig to com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdaterConfiguration. Add com.tomtom.sdk.datamanagement.nds.update.AutomaticMapOperationConfiguration field to com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdaterConfiguration.

New features

  • Introduce a new API NdsStoreUpdater.calculateUninstallSize(). [NAVIGATION][FEATURE] Introduce a new API CompositeRegionsUpdater.calculateUninstallSize()

Fixes

  • com.tomtom.sdk.navigation.ui.NavigationListener.onStarted() not being called on subsequent navigation starts.
  • Add missing step to the Navigation project setup instruction about defining the apiKey variable in build.gradle.kts.
  • Compensate the announcement distance by audio duration and current speed.
  • Ensure that TomTomNavigation events are issued on the main thread in a safe manner.

Updates

  • Add. com.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration, com.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.AllRegions, com.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.RelevantRegions, com.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.RegionsAlongRoute.
  • Navigation no longer use LocationProvider.lastKnownLocation at start.

Routing

Breaking changes

  • Class com.tomtom.sdk.routing.range.online.OnlineRangeCalculator is now internal. Use com.tomtom.sdk.routing.range.online.OnlineRangeCalculatorFactory instead.

New features

  • Add standard comparison operator support to Consumption type.
  • New field in Route object: plannedWith, exposing usedRoutePlanningOptions.

Updates

  • Clarified the documentation for TrafficSection IDs.
  • Create com.tomtom.sdk.routing.range.online.OnlineRangeCalculatorFactory and com.tomtom.sdk.routing.range.offline.OfflineRangeCalculatorFactory objects.
  • Fill isManeuver property of LaneSection for offline routing.

New features

  • Add poiId to location.poi.Poi for OfflineSearch.
  • Add poiId to location.poi.Poi for OnlineSearch.

Fixes

  • Support deserialization of the municipality subdivision as an entity type.

Updates

  • Make close operation in search synchronous.

version 0.47.0 - 12/02/2024

General

Breaking changes

  • In upcoming releases we plan to raise the minimum API level which will enable us to bring faster & qualitative location technology updates to you. This will allow you to bring apps with Nav SDK to approx. 93% active devices worldwide. Please make sure to follow upcoming release notes for announcement and update your application accordingly to comply with the minimum API 26.
  • We are removing com.tomtom.sdk.common.httpframework.HttpFramework.addRequestObserver, and com.tomtom.sdk.common.httpframework.HttpFramework.removeRequestObserver. Implement com.tomtom.sdk.http.HttpInterceptor instead.
  • We are removing the com.tomtom.sdk.common.httpframework.Interceptor interface. Use the com.tomtom.sdk.http.HttpInterceptor interface instead. Remove com.tomtom.sdk.common.httpframework.bindings.Client.addPreInterceptor, com.tomtom.sdk.common.httpframework.bindings.Client.addPostInterceptor, com.tomtom.sdk.common.httpframework.bindings.Core.addPreInterceptor, and com.tomtom.sdk.common.httpframework.bindings.Core.addPostInterceptor methods. Use com.tomtom.sdk.http.HttpConfig.interceptors property instead.

New features

  • We are adding JVM implementation for DcasTransport.
  • We are updating the default radius and corridor width for prefetching tiled data.

Updates

  • Add missing documentation for the com.tomtom.sdk.common.android.ui.ViewBoundaries.

Map

New features

  • We are adding CameraPositionCallback, CameraPropertiesSteadyListener, CameraPropertiesChangeListener experimental API.

Fixes

  • Fix memory leak that occurred when map was removed.
  • Fix missing name in POI search visualization.
  • Handle free driving transitions in NavigationVisualization.
  • Handle Freedriving transitions in. NavigationVisualization

Removals

  • Remove experimental asynchronous CameraController.getCameraPosition API .

Updates

  • Add collaboration test for decide by steering for better route proposal in navigation visualization.
  • Enable removing listeners from NdsStoreAccessSync after closing.
  • Implement Daichi FollowRouteNorthUp operator.
  • Remove deprecated packagingOptions from packaging in the guideline.

Known issues

  • Temporary solution to avoid AmiGO crash.

Breaking changes

  • We are renaming com.tomtom.sdk.datamanagement.nds.update.CompletedMapOperation.errorCode to com.tomtom.sdk.datamanagement.nds.update.CompletedMapOperation.error.

New features

  • Enable horizon partial data update. Reduce the visible flickering of SafetyLocation on the Horizon when there is a safety location data update.

Fixes

  • Fix flaky disappearance of safety locations on the horizon when navigation is stopped and then restarted.
  • Fix problem of no red light camera safety location on horizon.
  • Merge route stops after refreshing.
  • When the location visiting the waypoint does not detect deviation before detecting departing from the waypoint.

Updates

  • com.tomtom.sdk.navigation.arrival.WaypointState and com.tomtom.sdk.navigation.arrival.WaypointStatus is now available in General Availability.
  • com.tomtom.sdk.navigation.NavigationSnapshot is now available in General Availability.
  • com.tomtom.sdk.navigation.RouteSnapshot and com.tomtom.sdk.navigation.TripSnapshot is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation is now available in General Availability.
  • OnlineTomTomNavigationFactory and its respective Configuration are now available under General Availability in package com.tomtom.sdk.navigation.online.
  • Add the com.tomtom.sdk.navigation.tracking.RouteTrackingEngineFactory.DEFAULT_OFF_ROUTE_LOCATIONS_COUNTER_THRESHOLD constant that defines the default value for the com.tomtom.sdk.navigation.tracking.RouteTrackingEngineFactory.create argument.
  • Add the offRouteProgressDifferenceThreshold argument to the com.tomtom.sdk.navigation.tracking.RouteTrackingEngineFactory.create method.
  • Add the offRouteLocationsCounterThreshold argument to the com.tomtom.sdk.navigation.tracking.RouteTrackingEngineFactory.create method.
  • Corrected log severity of some logs.
  • Improve documentation for:
    • com.tomtom.sdk.navigation.WaypointArrivalListener;
    • com.tomtom.sdk.navigation.arrival.ArrivalDetectionEngine;
    • com.tomtom.sdk.navigation.arrival.WaypointStatus;
    • com.tomtom.sdk.navigation.arrival..WaypointState.
  • Promote com.tomtom.sdk.navigation.horizon.elements.dangerousgoodsrestriction to GA.
  • Update documentation of com.tomtom.sdk.navigation.NavigationSnapshot.
  • Update inline documentation for com.tomtom.sdk.navigation.PersistentNavigationState class.
  • Update inline documentation for com.tomtom.sdk.navigation.TomTomNavigation.persistentNavigationState property.
  • Update inline documentation for com.tomtom.sdk.navigation.TomTomNavigation.resume(persistentNavigationState: PersistentNavigationState) method.
  • Update the com.tomtom.sdk.navigation.tracking.RouteTrackingEngine implementation to detect deviations faster.
  • Update the documentation structure for com.tomtom.sdk.navigationRouteSnapshot, com.tomtom.sdk.navigation.TripSnapshot, com.tomtom.sdk.navigation.LocationSnapshot, com.tomtom.sdk.navigation.ConfigurationSnapshot.

Routing

Deprecations

  • Deprecate the com.tomtom.sdk.location.road.DrivingSide class. Use the com.tomtom.sdk.location.DrivingSide class instead.
  • Deprecate the com.tomtom.sdk.routing.route.DrivingSide class. Use the com.tomtom.sdk.location.DrivingSide class instead.
  • Deprecate the com.tomtom.sdk.routing.route.instruction.autotransport.AutoTransportType.SkyCableTransporterBridge value.

Updates

  • Document unsupported long-distance EV routing options.
  • Promote RangeBoundary.Polygon to GA.

Search

New features

  • Support configurable service backend URL for search dynamic data access.

Fixes

  • Allow personal location of another type such as recent destination be saved as favorite.

Updates

  • Ensure artifacts are uploaded when JVM test fails.
  • Improve component tests in search based on Amigo use cases.
  • Move (Search) Feedback related classes to GA.

version 0.46.0 - 01/02/2024

General

Breaking changes

  • Removed anonymous parameter from com.tomtom.sdk.telemetry.DefaultTelemetryConfigProvider constructor. Set com.tomtom.sdk.telemetry.Telemetry.userConsent to com.tomtom.sdk.telemetry.Consent.Anonymized instead.

New features

  • Added an Anonymized consent level for Telemetry.

Fixes

  • Canceled coroutine scope in com.tomtom.sdk.common.mqtt.TomTomMqttDataProvider.
  • Preventing crashes in framework-http-binding tests.

Updates

  • com.tomtom.sdk.location.RoadShield is now available in General Availability.
  • Fixed offline map setup documentation.
  • Refined the documentation of classes in com.tomtom.sdk.safetylocations.model.

Map

New features

  • `com.tomtom.sdk.map.display.camera.CameraOptionsFactory.positionMarkerVerticalOffset`is now available in Public Preview.
  • Exposing Routing Visualization API in Navigation Visualization via inheritance.

Fixes

  • Fixed ANR when more then one mapview is used.
  • Removed usage of data-binding in map display module.

Updates

  • Added missing collaboration test to better route visualization.

Breaking changes

  • com.tomtom.sdk.datamanagement.nds.update.MapUpdateError class is now an abstract one. The com.tomtom.sdk.datamanagement.nds.update.AutomaticMapUpdateFailureListener.onAutomaticUpdateFailure method receives an instance of com.tomtom.sdk.datamanagement.nds.update.MapUpdateError class. The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionListener.onCompositeRegionGraphChanged uses an instance of com.tomtom.sdk.datamanagement.nds.update.MapUpdateError class.
  • Changed return value type in com.tomtom.sdk.navigation.arrival.ArrivalDetectionEngine.hasArrivedAtWaypoint(NavigationSnapshot) from WaypointArrivalStatus to WaypointStatus .
  • Changed type of com.tomtom.sdk.navigation.RouteSnapshot.waypointArrivalHistory from List<WaypointArrivalStatus> to `List<WaypointStatus&gt; `.
  • Made com.tomtom.sdk.navigation.DrivingHistorySnapshot Sdk internal.
  • Made com.tomtom.sdk.navigation.NavigationSnapshot.historySnapshot Sdk internal.
  • Removed com.tomtom.sdk.hazards.common.Hazards.
  • Removed com.tomtom.sdk.hazards.common.HazardsFailure.
  • Removed com.tomtom.sdk.hazards.common.HazardsOptions.
  • Removed com.tomtom.sdk.hazards.common.HazardsUpdateListener.
  • Removed com.tomtom.sdk.safetylocations.common.EncodedSafetyLocation.
  • Removed com.tomtom.sdk.safetylocations.common.SafetyLocations.
  • Removed com.tomtom.sdk.safetylocations.common.SafetyLocationsFailure.
  • Removed com.tomtom.sdk.safetylocations.common.SafetyLocationsOptions.
  • Removed com.tomtom.sdk.safetylocations.common.SafetyLocationsUpdateListener.
  • Removed constructor com.tomtom.sdk.navigation.hybrid.Configuration(Context,HybridNavigationDataStore,LocationProvider,RoutePlanner?,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,DataStoreSelectionEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocations?)`. Instead, use constructor com.tomtom.sdk.navigation.hybrid.Configuration(Context,HybridNavigationDataStore,LocationProvider,RoutePlanner?,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,DataStoreSelectionEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocationsConfiguration?)`
  • Removed constructor com.tomtom.sdk.navigation.offline.Configuration(Context,NdsMapContext,LocationProvider,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocations?)`. Instead, use constructor com.tomtom.sdk.navigation.offline.Configuration(Context,NdsMapContext,LocationProvider,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocationsConfiguration?)`
  • Removed constructor com.tomtom.sdk.navigation.online.Configuration(Context,NavigationTileStore,LocationProvider,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocations?)`. Instead, use constructor com.tomtom.sdk.navigation.online.Configuration(Context,NavigationTileStore,LocationProvider,RoutePlanner?,VehicleProvider,BetterProposalAcceptanceMode,DeviationReplanningMode,ReplanningRetryPolicy,RouteReplanningEngine?,DataStoreMaintenanceEngine?,GuidanceEngine?,HorizonEngine?,MapMatchingEngine?,RouteProjectionEngine?,RouteTrackingEngine?,RouteProgressEngine?,ArrivalDetectionEngine?,`com.tomtom.sdk.safetylocations.common.SafetyLocationsConfiguration?)`
  • Removed remainingTrafficDelay from com.tomtom.sdk.navigation.progress.RouteProgress ctor.
  • Renamed com.tomtom.sdk.navigation.arrival.WaypointArrivalState.Reached to com.tomtom.sdk.navigation.arrival.WaypointState.Arrived.
  • Renamed com.tomtom.sdk.navigation.arrival.WaypointArrivalState.Visited to com.tomtom.sdk.navigation.arrival.WaypointState.Departed.
  • Renamed com.tomtom.sdk.navigation.arrival.WaypointArrivalState into com.tomtom.sdk.navigation.arrival.WaypointState.
  • Renamed com.tomtom.sdk.navigation.arrival.WaypointArrivalStatus into com.tomtom.sdk.navigation.arrival.WaypointStatus.

New features

  • Sending information about the better route proposal events to the telemetry. When com.tomtom.sdk.telemetry.Telemetry is initialized and com.tomtom.sdk.telemetry.Consent is set to at least com.tomtom.sdk.telemetry.Consent.Anonymized, the navigation sends information about better route.
  • Sending information about the route deviation events to the telemetry. When com.tomtom.sdk.telemetry.Telemetry is initialized and com.tomtom.sdk.telemetry.Consent is set to at least com.tomtom.sdk.telemetry.Consent.Pseudonymized, the navigation sends information about route deviation.
  • Sending information about the route replanning events to the telemetry. When com.tomtom.sdk.telemetry.Telemetry is initialized and com.tomtom.sdk.telemetry.Consent is set to at least com.tomtom.sdk.telemetry.Consent.Pseudonymized, the navigation sends information about route replanning.

Fixes

  • Ensuring that optional property values of location, reported by AndroidLocationProvider, are finite.
  • Fixed crash in OffRoadTomTomNavigationFactory.

Updates

  • com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.DatabaseError, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.ExclusiveAccessNotAcquired, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.FileSystemError, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.InitFailed, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.InsufficientDiskSpace, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.MissingUpdates, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.NetworkError, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.NoMapAvailable, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.SharedMapAccessError, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.Unexpected, com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.UpdatesDisabled were added.
  • Added remainingTrafficDelay property to com.tomtom.sdk.navigation.progress.RouteStopProgress.
  • Com.tomtom.sdk.datamanagement.nds.NdsStore is now available in General Availability.
  • Com.tomtom.sdk.navigation.TomTomNavigation.addProgressUpdatedListener, com.tomtom.sdk.navigation.TomTomNavigation.removeProgressUpdatedListener and com.tomtom.sdk.navigation.ProgressUpdatedListener are now available in General Availability.
  • Notifing data change in bounding boxes of safety locations and hazards per 500 ms instead of when every data change.
  • Promoted com.tomtom.sdk.navigation.NavigationStateChangedListener and com.tomtom.sdk.navigation.NavigationState to General Availability.
  • Promoted com.tomtom.sdk.navigation.progress.RouteProgress to General Availability.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.addNavigationStateChangedListener(), com.tomtom.sdk.navigation.TomTomNavigation.removeNavigationStateChangedListener() and. com.tomtom.sdk.navigation.TomTomNavigation.navigationState to General Availability.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.start(), com.tomtom.sdk.navigation.TomTomNavigation.start(options: NavigationOptions) and com.tomtom.sdk.navigation.TomTomNavigation.stop() to General Availability.
  • Updated documentation for com.tomtom.sdk.location.mapmatched.MapMatchedLocationProvider.close, com.tomtom.sdk.location.mapmatched.MapMatchedLocationProvider.disable,. com.tomtom.sdk.location.mapmatched.MapMatchedLocationProvider.enable, com.tomtom.sdk.datamanagement.datastoreupdater.DataStoreUpdater.close and com.tomtom.sdk.datamanagement.datastoreupdater.DataStoreUpdater.start.
  • Updated documentation for com.tomtom.sdk.navigation.progress.RouteStopProgress.
  • Updated documentation for com.tomtom.sdk.navigation.TomTomNavigation.
  • Updated documentation with throw details when trying to add already added listener in TomTomNavigation.

Routing

Deprecations

  • Deprecated the com.tomtom.sdk.routing.route.instruction.RoadShield class ,replaced with a typealias for back compatibility , please use com.tomtom.sdk.location.RoadShield instead.
  • Deprecated the TollRoadSection class.

New features

  • Added support for NDS.Live to OfflineRoutePlanner.

Fixes

  • LDEV on Obris with avoids is now supported.

Search

Fixes

  • Made POI name optional as there are POIs without names in the onboard NDS map.

version 0.45.2 - 01/02/2024

General

Fixes

  • Updated routing default endpoint, which was incorrectly set in Guidance v2 making route calculations impossible for some customers.

version 0.45.0 - 22/01/2024

General

Breaking changes

  • com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegion. and com.tomtom.sdk.datamanagement.nds.update.RegionGraphNode children properties can be nullable instead of empty by default.
    • Marked Archive, Message, and Transport Telemetry interfaces as internal.
    • Renamed com.tomtom.sdk.datamanagement.nds.update.UpdateInfo.totalDownloadSizeInBytes to com.tomtom.sdk.datamanagement.nds.update.UpdateInfo.totalDownloadSize. Changed the com.tomtom.sdk.datamanagement.nds.update.UpdateInfo.totalDownloadSize type from Long to com.tomtom.quantity.Memory.

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.45.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Map

Breaking changes

  • Added the destinationConnectionLineStyle parameter to navigation StyleConfiguration.

New features

  • Added Geojson support for range visualization.
  • Added support for visualization of the reachable distance in maps SDK and using that in the routing visualization module.

Updates

  • Hybrid offline first data provider now correctly translates zoom level to NDS level of details.

Breaking changes

  • com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore no longer implements java.lang.AutoCloseable. com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStoreAccess no longer implements java.lang.AutoCloseable
  • An exception is now thrown when an empty list is provided for remainingRouteStopsProgress from com.tomtom.sdk.navigation.progress.RouteProgress ctor.
  • Made com.tomtom.sdk.navigation.NavigationSnapshot a non-data class.
  • Made com.tomtom.sdk.navigation.NavigationSnapshot constructor SDK internal.
  • Made remainingRouteStopsProgress from com.tomtom.sdk.navigation.progress.RouteProgress ctor non-optional.
  • Migrated com.tomtom.sdk.navigation.RouteSnapshot and com.tomtom.sdk.navigation.TripSnapshot from data class to class.
  • Removed com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnNavigationStarted API. Instead of it, use com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnNavigationStateChanged to listen for the following navigation mode changes:
    • Idle
    • FreeDriving
    • ActiveGuidance
  • Removed com.tomtom.sdk.navigation.ActiveRoute.
  • Removed com.tomtom.sdk.navigation.NavigatedRoutes.
  • Removed com.tomtom.sdk.navigation.NavigationStartedListener and addNavigationStartedListener and removeNavigationStartedListener methods from com.tomtom.sdk.navigation.TomTomNavigation Interface. Instead of it, use com.tomtom.sdk.navigation.NavigationStateChangedListener to listen for the following navigation mode changes:
    • Idle
    • FreeDriving
    • ActiveGuidance
  • Removed isFollowed from com.tomtom.sdk.navigation.RouteSnapshot.
  • Removed remainingTime and remainingDistance from com.tomtom.sdk.navigation.progress.RouteProgress ctor.
  • Renamed com.tomtom.sdk.datamanagement.nds.NdsStoreConfiguration property to accessPermit.
  • Simple construction of OnlineTomTomNavigation configuration now requires NavigationTileStore instead of an apiKey.

Fixes

  • Closing injected HorizonDataAdapters when the DefaultHorizonEngine is closed.
  • Fixed AlternativeRoutesOptions for deviation replanning so it does not set alternativeType when maxAlternatives=0.
  • Fixed route replanning after deviation so it does not follow all remaining points from the original route.
  • Fixed stuck lane guidance panel after rerouting.

Updates

  • com.tomtom.sdk.datamanagement.nds.NdsStore was improved before moving to GA.
  • com.tomtom.sdk.navigation.guidance.AnnouncementMode, com.tomtom.sdk.navigation.guidance.LaneGuidanceUpdate, com.tomtom.sdk.navigation.guidance.LaneGuidanceUpdateType and com.tomtom.sdk.navigation.guidance.GuidanceEngineOptions are demoted to Public Preview.
  • com.tomtom.sdk.navigation.TomTomNavigation.addLocationMapMatchedListener, com.tomtom.sdk.navigation.TomTomNavigation.removeLocationMapMatchedListener and com.tomtom.sdk.navigation.LocationMapMatchedListener are now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.vehicleProvider is now available in General Availability.
  • Added addNavigationStateChangedListener and removeNavigationStateChangedListener APIs to the com.tomtom.sdk.navigation.TomTomNavigation interface.
  • Added com.tomtom.sdk.navigation.NavigationState.
  • Added com.tomtom.sdk.navigation.NavigationStateChangedListener.
  • Added missing documentation to the com.tomtom.sdk.navigation.NavigationStateChangedListener and com.tomtom.sdk.navigation.NavigationState API.
  • Added missing documentation to the TomTomSDKNavigation.start(), TomTomSDKNavigation.stop(), TomTomSDKNavigation.resume() and TomTomSDKNavigation.setActiveRoute() API.
  • Moved com.tomtom.sdk.datamanagement.nds.NdsStoreAccessPermit to General Availability.
  • Moved com.tomtom.sdk.datamanagement.nds.NdsStoreConfiguration to General Availability.
  • Updated documentation in com.tomtom.sdk.navigation.RouteSnapshot and com.tomtom.sdk.navigation.TripSnapshot.
  • Using add/remove terms instead of register/unregister in the documentation.
  • Using production endpoint as default for navigation tiles base URL if NdsLive is enabled.

Routing

Breaking changes

  • Changed function: com.tomtom.sdk.routing.range.online.OnlineRangeCalculator.calculateRange(RangeCalculationOptions,Callback<RangeCalculationResult,RangeCalculationFailure>):Cancellable to com.tomtom.sdk.routing.range.online.OnlineRangeCalculator.calculateRange(RangeCalculationOptions,Callback<Range,RoutingFailure>):Cancellable.
  • Changed function: com.tomtom.sdk.routing.range.online.OnlineRangeCalculator.calculateRange(RangeCalculationOptions):Result<RangeCalculationResult,RangeCalculationFailure> to com.tomtom.sdk.routing.range.online.OnlineRangeCalculator.calculateRange(RangeCalculationOptions):Result<Range,RoutingFailure>.
  • Changed function: com.tomtom.sdk.routing.range.RangeCalculator.calculateRange(RangeCalculationOptions,Callback<RangeCalculationResult,RangeCalculationFailure>):Cancellable to com.tomtom.sdk.routing.range.RangeCalculator.calculateRange(RangeCalculationOptions,Callback<Range,RoutingFailure>):Cancellable.
  • Changed function: com.tomtom.sdk.routing.range.RangeCalculator.calculateRange(RangeCalculationOptions):Result<RangeCalculationResult,RangeCalculationFailure> to com.tomtom.sdk.routing.range.RangeCalculator.calculateRange(RangeCalculationOptions):Result<Range, RoutingFailure>.
  • Extend the GA constructor of Sections and removed the InternalTomTomSdkApi constructor.
  • Moved Public Preview constructor of Sections to InternalTomTomSdkApi.
  • Removed com.tomtom.sdk.routing.range.RangeCalculationFailure class.
  • Removed com.tomtom.sdk.routing.range.RangeCalculationResult class.

Updates

  • com.tomtom.sdk.routing.route.section.toll.TollSection is now available in General Availability.
  • Interface com.tomtom.sdk.routing.range.RangeCalculator is now available in General Availability.

Search

Fixes

  • Now correctly parsing opening hours from the onboard search library when the POI is open for the whole day, yet the 24-hour flag is not set.
  • Renaming query parameter geoBias to geobias as the former is not supported.

version 0.44.0 - 15/01/2024

General

Breaking changes

  • com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId and com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionId are not value class anymore. In com.tomtom.sdk.datamanagement.nds.update.MapOperation use com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId for the nodeId variable. In package com.tomtom.sdk.datamanagement.nds.update.RegionGraphNode use com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId for the id. In com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegion use com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId for the id. In com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionOperation use com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId for the id. In com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionsUpdater.findCompositeRegions use com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId for the regionGraphNodeId variable.
  • Added a Telemetry Configuration Provider.
  • Refactored Telemetry into a singleton.

Fixes

  • Fix a potential memory leak that might occur when creating TomTomNavigation.
  • Proper closing of coroutines on shutdown related to com.tomtom.sdk.hazards.online.OnlineHazards and com.tomtom.sdk.safetylocations.online.OnlineSafetyLocations.

Removals

  • Decommission TomTom Legacy SDK.

Updates

  • Reorder modules in the API reference navigation structure according to relevance and importance.

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.44.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Map

Breaking changes

  • Converted PolygonOptions from data class to normal class.
  • Renamed com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint.fov to com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint.fieldOfView.
  • Renamed com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFov to com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFieldOfView.
  • Renamed com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoom to com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoom.
  • Renamed com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoomChange to com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoomChange.
  • Renamed the fov parameter in com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint initializer to fieldOfView.
  • Renamed the fov parameter in com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig initializer to fieldOfView.

New Features

  • Add a route click listener to visualization modules.
  • Support geojson polygon clickability.
  • Support geojson polygon overlay properties.
  • Support geojson polygon properties.

Fixes

  • Make the coroutine cooperative in MapDisplayAssetDataProvider.
  • Use last known default, road level location position if map matched lane level position is invalid.

Updates

  • Class com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowDirection is now available in General Availability.
  • Class com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowNorthUp is now available in General Availability.
  • Class com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRouteDirection is now available in General Availability.
  • Class com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRouteNorthUp is now available in General Availability.
  • Class com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig is now available in General Availability.
  • Class com.tomtom.sdk.map.display.polygon.Polygon is now available in General Availability.
  • Class com.tomtom.sdk.map.display.polygon.PolygonClickListener is now available in General Availability.
  • Class com.tomtom.sdk.map.display.polygon.PolygonController is now available in General Availability.
  • Class com.tomtom.sdk.map.display.polygon.PolygonNotFoundException is now available in General Availability.
  • Class com.tomtom.sdk.map.display.polygon.PolygonOptions is now available in General Availability.
  • Promote POIVisualization and SearchVisualization to PP.

Breaking changes

  • OfflineTomTomNavigationFactory configuration properties are now internal.
  • OffRoadTomTomNavigation configuration properties are now internal.
  • Add com.tomtom.sdk.datamanagement:nds-store-updater for the dependency setup in the gradle files.
  • Added showBetterRouteProposalPanel flag to com.tomtom.sdk.navigation.ui.NavigationUiOptions in order to be able to enable/disable the better route proposal panel.
  • Constructor for com.tomtom.sdk.navigation.LocationSnapshot is no longer part of public API.
  • HybridTomTomNavigationFactory configuration properties are now internal.
  • Make com.tomtom.sdk.datamanagement.locationdecoder.LocationDecoder interface internal.
  • Make com.tomtom.sdk.navigation.DrivingHistorySnapshot constructor SDK internal.
  • Move NdsStoreUpdater to the new module onboard-nds-store-updater.
  • Prepare MapMatchingResult API to promotion.
  • Remove com.tomtom.sdk.datamanagement.nds.InvalidListenerException and use IllegalArgumentException instead.
  • Remove routeReplanner from Configuration of HybridTomTomNavigationFactory. Either provide onlinePlanner and offlinePlanner, or create a RouteReplanningEngine with your own re-planner via RouteReplanningEngineFactory.create(routeReplanner).
  • Remove SystemClockTimeProvider from the public API.
  • Remove data class modifier from com.tomtom.sdk.navigation.LocationSnapshot.
  • Rename com.tomtom.sdk.datamanagement.nds.OnStoreAccessChangedListener to StoreAccessChangedListener.
  • Renamed com.tomtom.sdk.navigation.progress.RouteProgress.remainingWaypointsProgress to remainingRouteStopsProgress.
  • The interfaces com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore, com.tomtom.sdk.datamanagement.datastore.PositionUpdatable, and com.tomtom.sdk.datamanagement.datastore.ActiveRouteUpdatable are no longer generally available and should not be used in SDK user code.

Fixes

  • Extend lane level route window to avoid visual artefacts when the route window is updated.
  • Fix the detection of deviation when the waypoint is skipped.
  • The com.tomtom.sdk.navigation.progress.RouteProgress.remainingRouteStopsProgress contains only route stops whose offset is smaller than the distance along the route.

Updates

  • com.tomtom.sdk.datamanagement.nds.NdsStoreAccessSync is now available in General Availability.
  • com.tomtom.sdk.navigation.ConfigurationSnapshot is now available in General Availability.
  • com.tomtom.sdk.navigation.LocationSnapshot is now available in General Availability.
  • OnlineTomTomNavigationFactory configuration no longer behaves like a data class.
  • Add a simple constructor for HybridTomTomNavigationFactory configuration.
  • Add a simple constructor for OfflineTomTomNavigationFactory configuration.
  • Add a simple constructor for OffRoadTomTomNavigation configuration.
  • Add module and package level API documentation for mapmatching online engine.
  • Add new create method for NavigationTileStore.
  • Class com.tomtom.sdk.datamanagement.nds.MapIsNotAccessibleFailure is now available in General Availability.
  • Class com.tomtom.sdk.datamanagement.nds.NdsStoreFailure is now available in General Availability.
  • Com.tomtom.sdk.datamanagement.datastore.StoreAccessProvider is now available in General Availability.
  • Com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore is now available in General Availability.
  • Com.tomtom.sdk.datamanagement.nds.StoreAccessChangedListener is now available in General Availability.
  • Com.tomtom.sdk.navigation.mapmatching.MapMatchingResult is now available in General Availability.
  • Com.tomtom.sdk.navigation.mapmatching.MatchedLocation is now available in General Availability.
  • Destination RouteStopProgress added to com.tomtom.sdk.navigation.progress.RouteProgress.remainingRouteStopsProgress.
  • Improve the Telemetry configuration guide.
  • Promote com.tomtom.sdk.navigation.TomTomNavigation.setActiveRoutePlan to General Availability.
  • Update the wrong documentation about navigation on an imported route.
  • Warnings about NDS.Live-only NavigationTileStore parameters.

Routing

Breaking changes

  • Make OfflineRangeCalculator internal.

Updates

  • Class com.tomtom.sdk.routing.options.RangeCalculationOptions is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Budget.Distance is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Budget.Energy is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Budget.Fuel is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Budget.Time is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Budget is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.Range is now available in General Availability.
  • Class com.tomtom.sdk.routing.range.RangeBoundary is now available in General Availability.
  • Promote ChargingOptions and ChargingStopsStrategy to GA.

Search

Deprecations

  • Deprecate mistakenly exposed internal members MatchType::type and AreaType::value.

New Features

  • Implement requestGeometryData for hybrid search.

Fixes

  • Cancel the hybrid search engine coroutine scope when the engine is closed.
  • Cancel the online reverse geocoder engine coroutine scope when the engine is closed.
  • Throw IllegalStateException when using a hybrid reverse geocoder after closing it.
  • Throw an IllegalStateException when calling reverseGeocode after calling close in the offline reverse geocoder.

Updates

  • Cancel CoroutineScope in OfflineSearch.
  • Cancel CoroutineScope in OnlineWithCustomPoiSearch.
  • Cancel coroutines after closing in dynamic data APIs.
  • Document that the number of points in a route can impact data cost.
  • Document that the search results can be from a single country or geometry.
  • Implement calling any API on a closed offline search engine instance should throw IllegalStateException.
  • Implement calling any API on a closed online custom data search engine instance should throw IllegalStateException.
  • Implement calling any API on a closed online search engine instance should throw IllegalStateException.
  • Improve reverse geocoder API documentation.
  • Improve search API documentation.
  • Improve structured search API documentation.

version 0.43.0 - 05/01/2024

General

Breaking changes

  • Added new nullable parameter of com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore type to com.tomtom.sdk.navigation.hybrid.Configuration constructor.
  • Added new nullable parameter of com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore type to com.tomtom.sdk.navigation.offline.Configuration constructor.
  • Added the com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore?object as a second parameter in the`com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore constructor.
  • Changed the first parameter from com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStoreAccess constructor from public property com.tomtom.sdk.datamanagement.nds.NdsStore to private property com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore?`.
  • Changed the first parameter in the com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionsUpdater class from com.tomtom.sdk.datamanagement.nds.NdsStore to com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdater.
  • Made com.tomtom.sdk.datamanagement.nds.NdsStore parameter in com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore constructor as private value.
  • Moved com.tomtom.sdk.datamanagement.nds.AutomaticMapUpdateFailureListener to com.tomtom.sdk.datamanagement.nds.update.AutomaticMapUpdateFailureListener.
  • Moved com.tomtom.sdk.datamanagement.nds.MapUpdateError to com.tomtom.sdk.datamanagement.nds.update.MapUpdateError.
  • Moved com.tomtom.sdk.datamanagement.nds.MapUpdateMapAccessSyncClientAdapter to com.tomtom.sdk.datamanagement.nds.update.MapUpdateMapAccessSyncClientAdapter.
  • Moved com.tomtom.sdk.datamanagement.nds.NdsStore.addAutomaticMapUpdateFailureListener, com.tomtom.sdk.datamanagement.nds.NdsStore.addRegionGraphListener, com.tomtom.sdk.datamanagement.nds.NdsStore.cancelAllMapOperations, com.tomtom.sdk.datamanagement.nds.NdsStore.findRegionsAlongPolyline, com.tomtom.sdk.datamanagement.nds.NdsStore.findRegionsAroundPosition, com.tomtom.sdk.datamanagement.nds.NdsStore.removeAutomaticMapUpdateFailureListener, com.tomtom.sdk.datamanagement.nds.NdsStore.removeRegionGraphListener, com.tomtom.sdk.datamanagement.nds.NdsStore.scheduleMapOperations, com.tomtom.sdk.datamanagement.nds.NdsStore.setUpdatesEnabled, com.tomtom.sdk.datamanagement.nds.NdsStore.updateActiveRoute, com.tomtom.sdk.datamanagement.nds.NdsStore.updatePosition, to com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.addAutomaticMapUpdateFailureListener, com.tomtom.sdk.datamanagement.nds.NdsStore.addRegionGraphListener, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.cancelAllMapOperations, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.findRegionsAlongPolyline, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.findRegionsAroundPosition, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.removeAutomaticMapUpdateFailureListener, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.removeRegionGraphListener, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.scheduleMapOperations, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.setUpdatesEnabled, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.updateActiveRoute, com.tomtom.sdk.datamanagement.nds.NdsStoreUpdater.updatePosition.
  • Moved com.tomtom.sdk.datamanagement.nds.NdsStoreUpdateConfig from com.tomtom.sdk.datamanagement.nds.NdsStoreConfiguration to com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdateConfig.
  • Moved com.tomtom.sdk.datamanagement.nds.RegionGraphListener to com.tomtom.sdk.datamanagement.nds.update.RegionGraphListener.
  • Removed AccidentBlackspotZone from com.tomtom.sdk.safetylocations.model.SafetyLocationType.
  • Removed the com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStoreAccess.getNdsStore() method.
  • Renamed com.tomtom.sdk.datamanagement.datastoreupdater.DataStoreUpdater to com.tomtom.sdk.datamanagement.datastoreupdater.RouteContextUpdater.
  • The com.tomtom.sdk.datamanagement.nds.NdsStore.locationDecoder field is no longer marked as lateinit.
  • The com.tomtom.sdk.datamanagement.nds.NdsStore class no longer implements com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore.

New Features

  • Introduced experimental interceptors API.

Updates

  • VehicleProvider, VehicleProviderFactory and VehicleUpdatedListener in package com.tomtom.sdk.vehicle are now available under General Availability.
  • All vehicle properties in package com.tomtom.sdk.vehicle.property are now available in General Availability.
  • Class com.tomtom.sdk.vehicle.AdrTunnelRestrictionCode is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.AltitudeChangeEfficiency is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.AltitudeChangeEnergy is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ChargeLevel is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ChargingConnector is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ChargingInformation is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ChargingParameters is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.CombustionEngine is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.CombustionVehicleConsumption is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.CombustionVehicleEfficiency is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ConnectorDetails is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.CurrentType is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ElectricEngine is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ElectricVehicleConsumption is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.ElectricVehicleEfficiency is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.Vehicle is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.VehicleDimensions is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.VehicleLoadType is now available in General Availability.
  • Class com.tomtom.sdk.vehicle.VelocityChangeEfficiency is now available in General Availability.
  • Fixed documentation mistake for ElectricEngineProperties and CombustionEngineProperties in package com.tomtom.sdk.vehicle.property.

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.43.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Map

Breaking changes

  • Renamed com.tomtom.sdk.map.display.camera.CameraTrackingMode.Follow to com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowNorthUp.
  • Renamed com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRoute to com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRouteDirection.
  • Renamed updateReason argument of com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnRouteUpdated(Route, RouteUpdatedReason)to`reason.

Deprecations

  • Deprecated com.tomtom.sdk.map.display.camera.CameraTrackingMode.Companion.Follow, replace by com.tomtom.sdk.map.display.camera.CameraTrackingMode.Companion.FollowNorthUp.
  • Deprecated com.tomtom.sdk.map.display.camera.CameraTrackingMode.Companion.FollowRoute, replace by com.tomtom.sdk.map.display.camera.CameraTrackingMode.Companion.FollowRouteDirection.

New Features

  • Introduced Geojson polygon client implementation.
  • Introduced Geojson polygon overlay client implementation.
  • Introduced new classes for GeoJson polygon overlay options.
  • Introduced new route API for routing and navigation.

Fixes

  • Corrected padding attribute format in attrs.xml.
  • Modified lane level route line widths and removed route outline.
  • Remove unnecessary exception throws in VehicleController.

Updates

  • Class com.tomtom.sdk.map.display.vehicle.VehicleController is now available in General Availability.
  • NavigationEventDispatcher is now available in General Availability.
  • NavigationEventDispatcherFactory is now available in General Availability.
  • NavigationVisualization.setTrackingMode is now available in General Availability.
  • Update camera properties for default follow route operators.
  • Updated style specification link in com.tomtom.sdk.map.display.style.StyleDescriptor.

Breaking changes

  • Com.tomtom.sdk.navigation.progress.RouteProgress.remainingRouteStopsProgress renamed to remainingWaypointsProgress.
  • Added group caching and prefetching attributes in NavigationTileStoreConfiguration.
  • Changed NavigationTileStoreConfiguration.PrefetchingConfiguration.requestLaneTiles variable name to shouldRequestLaneTiles.
  • Changed Tile Service location type from Uri to Url.
  • Converted com.tomtom.sdk.navigation.mapmatching.MapMatchingResult and com.tomtom.sdk.navigation.mapmatching.MatchedLocation from data class to class.
  • Method com.tomtom.sdk.navigation.progress.RouteProgressEngine.calculateProgress has changed return type from com.tomtom.sdk.navigation.progress.RouteProgress to java.util.Map<`com.tomtom.sdk.routing.route.RouteId`,com.tomtom.sdk.navigation.progress.RouteProgress&gt;.
  • Method com.tomtom.sdk.navigation.routereplanner.RouteReplanner.backToRoute has changed return type from com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.routing.RoutingFailure> to com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.navigation.replanning.RouteReplanningFailure>.
  • Method com.tomtom.sdk.navigation.routereplanner.RouteReplanner.incrementRouteContents has changed return type from com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.routing.RoutingFailure> to com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.navigation.replanning.RouteReplanningFailure>.
  • Method com.tomtom.sdk.navigation.routereplanner.RouteReplanner.update has changed return type from com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.routing.RoutingFailure> to com.tomtom.sdk.common.Result<com.tomtom.sdk.navigation.routereplanner.RouteReplannerResponse,com.tomtom.sdk.navigation.replanning.RouteReplanningFailure>.
  • Migrated com.tomtom.sdk.navigation.arrival.WaypointArrivalStatus from data class to class.
  • NavigationTileStoreAccess API changed to internal.
  • Refactored com.tomtom.sdk.navigation.RouteAddedListener by adding RoutePlanningOptions to the onRouteAdded method.
  • Removed com.tomtom.sdk.navigation.mapmatching.featuretoggle.PathMatcherFeature from the Public Preview. GSMM is used as the only strategy.
  • Removed data class modifier from com.tomtom.sdk.navigation.routeprojection.ProjectedRoute.
  • Removed data class modifier from ConfigurationSnapshot.
  • Removed VehicleProvider.setVehicle method in favor of the mutable property VehicleProvider.vehicle in package com.tomtom.sdk.vehicle.
  • Removed data modifier from ProjectedRouteSection.
  • Renamed com.tomtom.sdk.navigation.RouteUpdateReason to com.tomtom.sdk.navigation.RouteUpdatedReason.
  • Renamed VehicleProvider.updateVehicle method to VehicleProvider.updateVehicleProperties in package com.tomtom.sdk.vehicle.
  • Renamed VehicleProvider.vehicleSnapshot property to VehicleProvider.vehicle and make it mutable in package com.tomtom.sdk.vehicle.
  • Renamed the updateReason argument of com.tomtom.sdk.navigation.RouteUpdatedListener.onRouteUpdated(Route, RouteUpdatedReason)to`reason.
  • Replaced com.tomtom.sdk.navigation.TomTomNavigation.update with com.tomtom.sdk.navigation.TomTomNavigation.setActiveRoutePlan.
  • Simplified the main constructor of online configuration.

New Features

  • Added support for calculating progress for active route and better proposal.

Fixes

  • Fixed crashes on lower Android versions due to failed resolution of java.time.Clock.
  • Route point offset is now correctly calculated for a route update.

Updates

  • Com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStoreConfiguration is now available in General Availability.
  • Com.tomtom.sdk.navigation.DrivingHistorySnapshot is no longer data class.
  • Com.tomtom.sdk.navigation.TomTomNavigation.betterProposalAcceptanceMode is now available in General Availability.
  • RouteProgress is now calculated only for the matched locations that are following the route. Otherwise, the previous RouteProgress is published.
  • TomTomNavigation.locationProvider in package com.tomtom.sdk.navigation is now available under General Availability.
  • Added a note to use TomTomNavigation from main thread.
  • Added articles to documentation on continuous replanning and route deviation.
  • Added exceptions information to documentation for guidance instructions.
  • Added missing test for OfflineTomTomNavigationFactory when UnifiedMapAccessFeature is enabled.
  • Changed the default value of better proposal acceptance mode in constructor of offline/Configuration.
  • Decoding safety location coordinates from openlr and use them in bounding box check.
  • Improved docs for ProgressUpdatedListener and TomTomNavigation.addProgressUpdatedListener.
  • Improved RouteProgress calculation at the interactions to avoid progress jumps.
  • Improved testing of NavigationTileStore instantiation.
  • Marked com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicyFactory.DEFAULT_MAX_RETRY_DELAY as public.
  • Promoted com.tomtom.sdk.navigation.ActiveRouteChangedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicy and com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicyFactory to General Availability.
  • Promoted com.tomtom.sdk.navigation.RouteAddedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.RouteAddedReason to General Availablity.
  • Promoted com.tomtom.sdk.navigation.RouteRemovedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.RouteRemovedReason to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.addActiveRouteChangedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.addRouteAddedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.addRouteRemovedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.removeActiveRouteChangedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.removeRouteAddedListener to General Availablity.
  • Promoted com.tomtom.sdk.navigation.TomTomNavigation.removeRouteRemovedListener to General Availablity.
  • Publishing WaypointArrivalState.Visited when the user deviates for over 100m on a motorway and 50m on other roads from the route while visiting the waypoint.
  • Updated documentation in com.tomtom.sdk.navigation.arrival.WaypointArrivalState and com.tomtom.sdk.navigation.arrival.WaypointArrivalStatus.
  • Updated inline documentation of MapMatchingResult and MatchedLocation APIs.
  • When BetterProposalAcceptanceMode.Manual is set, the route, provided by the RouteAddedListener for reasons RouteAddedReason.AvoidBlockage and RouteAddedReason.WithinRange, is now without the departure instruction.
  • When BetterProposalAcceptanceMode.Manual or BetterProposalAcceptanceMode.UnreachableOnly is set, the route provided by the RouteAddedListener RouteAddedReason.BetterRouteProposed reason is now without the departure instruction.

Routing

Breaking changes

  • Removed com.tomtom.sdk.routing.route.instruction.follow.FollowInstruction class.
  • Removed com.tomtom.sdk.routing.route.instruction.follow package .

Deprecations

  • Deprecated com.tomtom.sdk.routing.options.guidance.OnlineApiVersion.v1 ,start using com.tomtom.sdk.routing.options.guidance.OnlineApiVersion.v2 instead.
  • Deprecated com.tomtom.sdk.routing.route.instruction.arrival.ArrivalInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.arrival.ArrivalInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.autotransport.EnterAutoTransportInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.autotransport.EnterAutoTransportInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.autotransport.ExitAutoTransportInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.autotransport.ExitAutoTransportInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.bordercrossing.BorderCrossingInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.bordercrossing.BorderCrossingInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.carpoollane.EnterCarpoolLaneInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.carpoollane.EnterCarpoolLaneInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.carpoollane.ExitCarpoolLaneInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.carpoollane.ExitCarpoolLaneInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.departure.DepartureInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.departure.DepartureInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.fork.ForkInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.fork.ForkInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.highway.ExitHighwayInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.highway.ExitHighwayInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.highway.SwitchHighwayInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.highway.SwitchHighwayInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.Instruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.Instruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.mandatoryturn.MandatoryTurnInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.mandatoryturn.MandatoryTurnInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.merge.MergeInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.merge.MergeInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.roundabout.ExitRoundaboutInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.roundabout.ExitRoundaboutInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.roundabout.RoundaboutInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.roundabout.RoundaboutInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.tollgate.TollgateInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.tollgate.TollgateInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.turn.TurnInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.turn.TurnInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.turnaroundwhenpossible.TurnAroundWhenPossibleInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.turnaroundwhenpossible.TurnAroundWhenPossibleInstruction.combineWithNext property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.waypoint.WaypointInstruction.announcements property.
  • Deprecated com.tomtom.sdk.routing.route.instruction.waypoint.WaypointInstruction.combineWithNext property.

Fixes

  • Fixed online EV routing with Orbis. Passing the value of chargingStopsStrategy to Online API only if its value is equal to manualFastest. If its value is equal to automaticFastest, it will be automatically handled by the Online API.

Updates

  • Com.tomtom.sdk.routing.options.guidance.OnlineApiVersion is now available in General Availability.

Search

Fixes

  • Fixed the crash in personal locations loading by enabling the missing consumer proguard rule needed for serialization.
  • Populating sub-country and 2-letter iso country code in the reverse geocoder response.

Updates

  • Documented minimum and maximum values for the radius and heading for reverse geocoding options.
  • Improved API documentation for hybrid search.
  • Using cleaner function in OfflineSearchClient.kt.

Traffic

Deprecations

  • Deprecated TrafficTpeg and TrafficTpegConfiguration. Use the new TrafficClientFactory instead.

Fixes

  • The correct URL is now used when creating the default TomTom traffic provider.

version 0.42.2 - 29/12/2023

General

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.42.2 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Routing

Fixes

  • Fix online EV routing with Orbis. Pass the value of chargingStopsStrategy to Online API only if its value is equal to manualFastest. If its value is equal to automaticFastest, it will be automatically handled by the Online API.

version 0.42.0 - 18/12/2023

General

Breaking changes

  • Remove AutoCloseable from Telemetry interface.
  • Rename class com.tomtom.sdk.vehicle.property.LoadTypeProperty to com.tomtom.sdk.vehicle.property.HazmatClassesProperty.
  • Rename class from com.tomtom.sdk.vehicle.VehicleLoadType to com.tomtom.sdk.vehicle.HazmatClass.
  • Rename parameter from loadType to hazmatClasses in constructor com.tomtom.sdk.vehicle.Vehicle.Truck.
  • Rename parameter from loadType to hazmatClasses in constructor com.tomtom.sdk.vehicle.Vehicle.Van.
  • Rename property from loadType to hazmatClasses in com.tomtom.sdk.vehicle.CargoCapable.
  • Rename property from LoadType to`HazmatClasses` in com.tomtom.sdk.vehicle.property.PropertyId.
  • Rename property from OtherHazmatExplosive to IntlExplosive in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from OtherHazmatGeneral to IntlGeneral in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from OtherHazmatHarmfulToWater to IntlHarmfulToWater in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass1 to UnClass1Explosive in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass2 to UnClass2Gas in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass3 to UnClass3FlammableLiquid in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass4 to UnClass4FlammableSolid in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass5 to UnClass5Oxidizing in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass6 to UnClass6Toxic in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass7 to UnClass7Radioactive in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass8 to UnClass8Corrosive in com.tomtom.sdk.vehicle.HazmatClass.
  • Rename property from UnHazmatClass9 to UnClass9Misc in com.tomtom.sdk.vehicle.HazmatClass.

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.42.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Location

Fixes

  • Handle invalid indexes coming from decoding json with magnitude of delay data.
  • Ignore a route with just one point.
  • Make the coroutine cooperative in MapDisplayAssetDataProvider.
  • Use RouteProgress.remainingDistance instead of remainingDistance for last waypoint.

Updates

  • Promote com.tomtom.sdk.location.road.RoadCategory to GA.

Breaking changes

  • Destination RouteStopProgress excluded from com.tomtom.sdk.navigation.progress.RouteProgress.remainingRouteStopsProgress.
  • Make com.tomtom.sdk.navigation.replanning.ReplannedRoute.routePlanningOptions property non optional.
  • Make function com.tomtom.sdk.navigation.horizon.offline.OfflineHorizonEngineFactory.create(com.tomtom.sdk.datamanagement.nds.NdsStore,List<`com.tomtom.sdk.navigation.horizon.dataadapter.HorizonDataAdapter`&gt;) internal. Use function com.tomtom.sdk.navigation.horizon.offline.OfflineHorizonEngineFactory.create(com.tomtom.sdk.datamanagement.nds.NdsStore,com.tomtom.sdk.safetylocations.common.SafetyLocations?) instead.
  • Make function com.tomtom.sdk.navigation.horizon.tilestore.TileStoreHorizonEngineFactory.create(com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore,List<`com.tomtom.sdk.navigation.horizon.dataadapter.HorizonDataAdapter`&gt;) internal. Use function com.tomtom.sdk.navigation.horizon.tilestore.TileStoreHorizonEngineFactory.create(com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore,com.tomtom.sdk.safetylocations.common.SafetyLocations?) instead.
  • Mark as internal com.tomtom.sdk.navigation.replanning.DefaultReplanningRetryPolicy class.
  • New parameter, remainingDistance added to the com.tomtom.sdk.navigation.progress.RouteProgress ctor.
  • Remove constructor com.tomtom.sdk.navigation.hybrid.Configuration(android.content.Context,com.tomtom.sdk.location.LocationProvider,com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore,com.tomtom.sdk.datamanagement.nds.NdsStore,String,com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore,com.tomtom.sdk.navigation.datastoremaintenance.DataStoreMaintenanceEngine,com.tomtom.sdk.navigation.datastoreselection.DataStoreSelectionEngine,com.tomtom.sdk.routing.RoutePlanner,com.tomtom.sdk.routing.RoutePlanner,com.tomtom.sdk.navigation.routereplanner.RouteReplanner,com.tomtom.sdk.navigation.replanning.RouteReplanningEngine,com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicy,int,int,com.tomtom.sdk.navigation.guidance.GuidanceEngine,com.tomtom.sdk.navigation.horizon.HorizonEngine,com.tomtom.sdk.navigation.mapmatching.MapMatchingEngine,com.tomtom.sdk.navigation.routeprojection.RouteProjectionEngine,com.tomtom.sdk.navigation.tracking.RouteTrackingEngine,com.tomtom.sdk.navigation.progress.RouteProgressEngine,com.tomtom.sdk.navigation.arrival.ArrivalDetectionEngine,com.tomtom.sdk.vehicle.VehicleProvider,com.tomtom.sdk.telemetry.Telemetry). Use constructor com.tomtom.sdk.navigation.hybrid.Configuration(android.content.Context,com.tomtom.sdk.location.LocationProvider,com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore,com.tomtom.sdk.datamanagement.nds.NdsStore,String,com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore,com.tomtom.sdk.navigation.datastoremaintenance.DataStoreMaintenanceEngine,com.tomtom.sdk.navigation.datastoreselection.DataStoreSelectionEngine,com.tomtom.sdk.routing.RoutePlanner,com.tomtom.sdk.routing.RoutePlanner,com.tomtom.sdk.navigation.routereplanner.RouteReplanner,com.tomtom.sdk.navigation.replanning.RouteReplanningEngine,com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicy,int,int,com.tomtom.sdk.navigation.guidance.GuidanceEngine,com.tomtom.sdk.navigation.horizon.HorizonEngine,com.tomtom.sdk.navigation.mapmatching.MapMatchingEngine,com.tomtom.sdk.navigation.routeprojection.RouteProjectionEngine,com.tomtom.sdk.navigation.tracking.RouteTrackingEngine,com.tomtom.sdk.navigation.progress.RouteProgressEngine,com.tomtom.sdk.navigation.arrival.ArrivalDetectionEngine,com.tomtom.sdk.vehicle.VehicleProvider,com.tomtom.sdk.telemetry.Telemetry,com.tomtom.sdk.safetylocations.common.SafetyLocations) instead.
  • Remove minDistanceAhead parameter from the primary constructor of com.tomtom.sdk.navigation.horizon.MainPathSearchOptions and add it to the secondary constructor.
  • Remove package com.tomtom.sdk.navigation.horizon.dataadapter.safetylocations.online.
  • Remove package com.tomtom.sdk.navigation.horizon.dataadapter.
  • Rename com.tomtom.sdk.navigation.replanning.TomTomReplanningRetryPolicy to com.tomtom.sdk.navigation.replanning.DefaultReplanningRetryPolicy.
  • Replace the com.tomtom.sdk.navigation.ActiveRoute.proposedRoute property with the com.tomtom.sdk.navigation.ActiveRoute.proposedRoutePlan property of type RoutePlan.
  • Replace usage of the com.tomtom.sdk.navigation.replanning.DefaultReplanningRetryPolicy class with the com.tomtom.sdk.navigation.replanning.DefaultReplanningRetryPolicyFactory.create() for next classes:
  • Use com.tomtom.sdk.navigation.replanning.DefaultReplanningRetryPolicyFactory.create() to create default instance of com.tomtom.sdk.navigation.replanning.ReplanningRetryPolicy.

New Features

  • Promote NetworkStateProvider to GA.

Fixes

  • Add missing argument while creating RouteProgress.
  • Ensure no route replanning happens after navigation is stopped.
  • Fix crash in OpenLR decoding, when starting route simulation for second time.
  • Fix duplicate package and class names in some packages of the published SDK.
  • Fix order of properties inside RouteProgressTest.toString.
  • Throw exceptions before scheduling an action.

Updates

  • com.tomtom.sdk.datamanagement.navigationtile.AreaAlongRoute is now available in General Availability.
  • com.tomtom.sdk.datamanagement.navigationtile.CacheStorageConfiguration is now available in General Availability.
  • com.tomtom.sdk.navigation.LanguageChangedlListener.onLanguageChanged(Locale) is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.addGuidanceUpdatedListener(listener: GuidanceUpdatedListener)` is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.addLaneGuidanceUpdatedListener(listener: LaneGuidanceUpdatedListener)` is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.addRouteTrackingStateUpdatedListener is now available in General Availability. [NAVIGATION][UPDATE] com.tomtom.sdk.navigation.TomTomNavigation.removeRouteTrackingStateUpdatedListener is now available in General Availability. [NAVIGATION][UPDATE] com.tomtom.sdk.navigation.RouteTrackingStateUpdatedListener is now available in General Availability. [NAVIGATION][UPDATE] com.tomtom.sdk.navigation.tracking.RouteTrackingState is now available in General Availability. [NAVIGATION][UPDATE] com.tomtom.sdk.navigation.tracking.UnfollowedRoute is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.removeGuidanceUpdatedListener(listener: GuidanceUpdatedListener)` is now available in General Availability.
  • com.tomtom.sdk.navigation.TomTomNavigation.removeLaneGuidanceUpdatedListener(listener: LaneGuidanceUpdatedListener)` is now available in General Availability.
  • Added explicit application Activity inheritance for the "Build navigation app" guide.
  • Added import guid in Build Navigation app tutorial.
  • Added location permissions for the Building Navigation guide.
  • Do not notify RouteAddedListener when the user steers into the better route proposal since the listener was already called for this route.
  • Improve test for back to route points that are calculated by DefaultRouteTrackingEngine.
  • New property remainingDistance added to the com.tomtom.sdk.navigation.progress.RouteProgress class.
  • Promote Horizon to GA.
  • The end offset of the last arc on the route should equal to the route length.

Routing

Breaking changes

  • Add chargingStopsStrategy parameter.

Deprecations

  • Deprecate com.tomtom.sdk.routing.options.guidance.AnnouncementPoints class.
  • Deprecate com.tomtom.sdk.routing.options.guidance.InstructionType class.

New Features

  • Add support for creating com.tomtom.sdk.OfflineRoutePlanner with a unified map access handle.

Fixes

  • Disable sending hilliness and windingness when sending Orbis route requests with thrilling route type.

Search

Breaking changes

  • Remove componentN functions from PlaceDetails in SearchUI.

Updates

  • Cover missing API reference documentation in Search (Online/Offline).
  • Improve documentation for boundingBox in SearchResult.

version 0.41.0 - 12/12/2023

General

Breaking changes

  • Remove com.tomtom.sdk.datamanagement.nds.MapUpdatedListener. Remove com.tomtom.sdk.datamanagement.nds.NdsStore.addMapUpdatedListener and com.tomtom.sdk.datamanagement.nds.NdsStore.removeMapUpdatedListener. For receiving map updates notification please use com.tomtom.sdk.datamanagement.nds.RegionGraphListener.

New Features

  • Make Van type cargo capable.

Fixes

  • Fix NoClassDefFoundError crash when SDK is used with API Level < 26.

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.41.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Map

Breaking changes

  • Make DataProviderControllerListener deprecated.

Fixes

  • Fix ClassNotFoundException: kotlin.Pair crash in the ElasticDataProvider.
  • Fix current operation calculation for uninstalled common regions edge case in CompositeRegions.

Updates

  • Update custom location marker documentation.

Breaking changes

  • Align data-management groupIds and artifactIds. Use com.tomtom.sdk.datamanagement:data-management-common instead of com.tomtom.sdk:data-management-common. Use com.tomtom.sdk.datamanagement:data-store instead of com.tomtom.sdk:data-store. Use com.tomtom.sdk.datamanagement:data-store-updater instead of com.tomtom.sdk:data-store-updater. Use com.tomtom.sdk.datamanagement:hybrid-navigation-data-store instead of com.tomtom.sdk:hybrid-navigation-data-store. Use com.tomtom.sdk.datamanagement:navigation-tile-store instead of com.tomtom.sdk:navigation-tile-store. Use com.tomtom.sdk.datamanagement:navigation-tiling instead of com.tomtom.sdk:navigation-tiling. Use artifactId navigation-data-store-hybrid instead of hybrid-navigation-data-store.
  • Demote ADASIS API to experimental.
  • Mark following APIs as Public Preview: com.tomtom.sdk.navigation.guidance.GuidanceEngineFactory com.tomtom.sdk.navigation.guidance.GuidanceEngine
  • Remove default value for com.tomtom.sdk.navigation.progress.RouteProgress.distanceAlongRoute.
  • Remove default value for com.tomtom.sdk.navigation.progress.RouteProgress.remainingTime.

New Features

  • Added support for decide-by-steering to accept a better route proposal.

Fixes

  • Fix a bug when wrong distance units appears.
  • Fix incorrect remaining distance in the guidance panel after selecting a different active route.
  • Improve the route refresh behaviour to avoid replanning failures.

Updates

  • Some customers are facing empty list of Safety Locations reported by Horizon engine. Under investigation.
  • com.tomtom.sdk.navigation.TomTomNavigation.deviationReplanningMode is now available in General Availability.
  • Add a link to FragmentContainerView from Android documentation for clarity and ease of understanding to the reader of the navigation guide.
  • Designate nullable members in the Building Navigation guide.
  • Improve docs for com.tomtom.sdk.navigation.RouteTrackingStateUpdatedListener, com.tomtom.sdk.navigation.tracking.RouteTrackingState and com.tomtom.sdk.navigation.tracking.UnfollowedRoute.
  • Make the code copyable by removing the android block from code snippets in the Navigation project setup guide.
  • Promote com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode to General Availability.
  • Refactor: Use fully qualified name for android.Manifest permissions.

Routing

Breaking changes

  • Remove unused com.tomtom.sdk.routing.offline.domain.messages.InstructionExtKt.

Fixes

  • Remove unsupported avoidVignette on Orbis.

Updates

  • Customers now can avoid and allow specific countries that have vignette roads.

Search

Breaking changes

  • Deprecate RoadUse, used in Reverse Geocoding, since it is already deprecated in the online service.

Fixes

  • Tackle technical gaps in Search APIs.

Updates

  • Add missing package/module details in Search, Dynamic Data and Reverse Geocoder APIs.
  • Module and package level API documentation for Search UI.

version 0.40.0 - 05/12/2023

General

Known issues

An incorrect routing endpoint is set by default in Guidance v2, making route calculations impossible with version 0.40.0 for some customers. Potential problems include prompts for a valid API key, such as:

  • "Your API key is invalid."
  • "Your API key does not support either the Routing API or the Routing API with Extended Guidance endpoints.".

Resolution of the issue involves upgrading SDK to version 0.46.0 or later.

Map

Breaking changes

  • Eliminate the use of the route change listener and substitute it with the experimental routeAdded and routeRemoved listeners in the navigation event dispatcher.
  • Suppress internal method from RoutingVisualization and avoid unwanted camera changes.

New Features

  • Introduce FollowRouteNorthUp camera tracking mode.
  • Introduce GeoJson support for traffic and safety locations.
  • Use lane information to place chevron on the map.

Fixes

  • The vehicle restriction for a given vehicle type sometimes fails to display correctly.

Breaking changes

  • Remove com.tomtom.sdk.navigation.NavigationFailure.
  • Remove com.tomtom.sdk.navigation.NavigationFailureListener.
  • Remove method com.tomtom.sdk.navigation.guidance.AnnouncementMode.toVerbosityLevel().
  • Remove method com.tomtom.sdk.navigation.TomTomNavigation.addNavigationFailureListener.
  • Remove method com.tomtom.sdk.navigation.TomTomNavigation.removeNavigationFailureListener.
  • Remove method com.tomtom.sdk.navigation.ui.NavigationFragment.NavigationListener.onFailed.
  • Remove public setters from some fields of ADASIS configuration data class.
  • Remove the com.tomtom.sdk.navigation.RoutesChangedListener. Use the com.tomtom.sdk.navigation.RouteAddedListener, com.tomtom.sdk.navigation.RouteRemovedListener and com.tomtom.sdk.navigation.ActiveRouteChangedListener to listen for route changes in the navigation.
  • Remove the com.tomtom.sdk.navigation.TomTomNavigation.addRoutesChangedListener(RoutesChangedListener) and the com.tomtom.sdk.navigation.TomTomNavigation.removeRoutesChangedListener(RoutesChangedListener) methods.
  • Set com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode.Automatic as default for hybrid TomTomNavigation.
  • Set com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode.Automatic as default for offline TomTomNavigation.
  • Set com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode.Automatic as default for offroad TomTomNavigation.
  • Set com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode.Automatic as default for online TomTomNavigation.
  • Update com.tomtom.sdk.navigation.online.Configuration and com.tomtom.sdk.navigation.offline.Configuration to inject com.tomtom.sdk.safetyLocations in order to simply the usage of safety location feature in Navigation during initialisation.

Fixes

  • Fix out-of-memory crash during navigation with long route.
  • Improve projected horizon based on route information.
  • TomTomNavigationService" is correctly closed after calling the "close()" method.

Updates

  • com.tomtom.sdk.navigation.GuidanceUpdatedListener is now available in General Availability.
  • com.tomtom.sdk.navigation.LaneGuidanceUpdatedListener is now available in General Availability.
  • com.tomtom.sdk.navigation.replanning.BetterProposalAcceptanceMode is now available in General Availability.
  • Improve NAV starting guide with variable naming for location provider.
  • Merge horizon elements if they are connected.
  • Update API documentation: com.tomtom.sdk.navigation.TomTomNavigation.

Routing

Breaking changes

  • com.tomtom.sdk.routing.options.guidance.GuidanceOptions is no longer a data class.
  • Removed package com.tomtom.sdk.routing.offline.infrastructure.
  • Removed package com.tomtom.sdk.routing.range.offline.infrastructure.

Deprecations

  • Guidance Option v1 is deprecated. Please use the new Guidance V2 factory methods.
    • Deprecate com.tomtom.sdk.routing.options.guidance.GuidanceOptions constructor, use the new constructor com.tomtom.sdk.routing.options.guidance.GuidanceOptions() instead.
    • Deprecate com.tomtom.sdk.routing.options.guidance.GuidanceOptions component functions.
    • Deprecate com.tomtom.sdk.routing.options.guidance.GuidanceOptions.copy() function, use extension function instead.

Search

Fixes

  • Cancel coroutine scope in OnlineSearch when the object is closed.
  • Throw NetworkOnMainThreadException when sending feedback on the main thread.

Updates

  • Extend the API documentation for Search, Autocomplete, POI details, Feedback, Geometry, Custom Data, Reverse Geocoder and Structure Search APIs.

version 0.39.1 - 28/11/2023

General

Fixes

  • Fix crash on start-up in online-only mode

version 0.39.0 - 27/11/2023

General

Breaking changes

  • Change a public API com.tomtom.sdk.common.SystemClock to internal. Add documentation to com.tomtom.sdk.common.SystemClock.
  • Fix api states for feature toggles.
    • Removed package com.tomtom.sdk.map.display.dataprovider.featuretoggle [RemovedPackage]
    • Removed package com.tomtom.sdk.map.display.featuretoggle [RemovedPackage]
    • Removed package com.tomtom.sdk.routing.featuretoggle [RemovedPackage]
  • Move com.tomtom.sdk.vehicle.DefaultVehicleProvider to internal. Default vehicle provider is expected to be created via com.tomtom.sdk.vehicle.VehicleProviderFactory.create().
  • Remove unused NavigationTileFeatureType.

Updates

  • Add external build configurations to public examples.
  • Add missing API documentation for Force.
  • Add missing documentation for several classes in Quantity.

Location

Breaking changes

  • Hide internal property value in com.tomtom.sdk.location.EntryType.

Updates

  • com.tomtom.sdk.location.EntryPoint and com.tomtom.sdk.location.EntryType are now available in General Availability.
  • Add missing documentation for GeoPoint.

Map

Breaking changes

  • Add ActiveRouteChangedListener and update logic for RouteUpdated in NavViz.
  • Change the type of safetyLocationId in com.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationElement from com.tomtom.sdk.navigation.horizon.elements.safetylocation.SafetyLocationId to com.tomtom.sdk.safetylocations.model.SafetyLocationId.
  • Make NavigationTileStoreAccess ctor internal.

New Features

  • Add to the elastic-data-provider module methods for prefetching areas and routes.

Fixes

  • Make Map ScaleView default to a unit based on the user's locale.

Updates

  • Added a configurable minimum zoom level for the TrafficDataProvider.

Breaking changes

  • Fix API state of horizon RPC adapter.
  • Refactor the com.tomtom.sdk.navigation.RouteUpdateReason to contain only the com.tomtom.sdk.navigation.RouteUpdateReason.Refresh and com.tomtom.sdk.navigation.RouteUpdateReason.Increment values. To observe route changes caused by the removed reasons use the com.tomtom.sdk.navigation.RouteAddedListener, com.tomtom.sdk.navigation.RouteRemovedListener, and com.tomtom.sdk.navigation.ActiveRouteChangedListener.
  • Remove package com.tomtom.sdk.navigation.horizon.elements.region. Remove constructor com.tomtom.sdk.navigation.horizon.elements.countryinformation.CountryInformationElement(int,int,long,long,String,String,int,com.tomtom.quantity.Speed.Unit,java.util.List<`com.tomtom.sdk.navigation.horizon.elements.countryinformation.RegionalSpeedLimit`&gt;). Use com.tomtom.sdk.navigation.horizon.elements.countryinformation.CountryInformationElement.countryName instead of com.tomtom.sdk.navigation.horizon.elements.region.RegionElement.country. Use com.tomtom.sdk.navigation.horizon.elements.countryinformation.CountryInformationElement.regionName instead of com.tomtom.sdk.navigation.horizon.elements.region.RegionElement.subCountry.
  • Remove SafetyLocationType and SafetyLocationId from com.tomtom.sdk.navigation.horizon.elements.safetylocation package since they are no longer needed (previously they were used in com.tomtom.sdk.navigation.horizon.elements.safetylocation.SafetyLocationElement).
  • Remove the com.tomtom.sdk.navigation.ReplannedRouteProposedListener. Use the com.tomtom.sdk.navigation.RouteAddedListener instead to listen for the better route proposal being added to the navigation session. The proposed route is added with the com.tomtom.sdk.navigation.RouteAddedReason.BetterRouteProposed reason.
  • Remove the com.tomtom.sdk.navigation.RouteDeviationListener. Use the com.tomtom.sdk.navigation.RouteTrackingStateUpdatedListener instead to listen for the followed and unfollowed routes. To check if the user deviated from the route, you can use the RouteTrackingState.hasDeviated property.
  • Removed LocationContextEngine interface.
  • Removed class com.tomtom.sdk.navigation.mapmatching.common.RouteWindow. Removed method`com.tomtom.sdk.navigation.mapmatching.common.RouteWindow.kt.toRouteWindow`(RouteSnapshot, Distance, Distance)Removed method`com.tomtom.sdk.navigation.routeprojection.unified.UnifiedRouteProjectionEngineFactory.create(StoreAccessProvider, RouteProjectionEngineOptions)`
  • Rename com.tomtom.sdk.navigation.horizon.elements.countryinformation.CountryInformationElement.countryCode to com.tomtom.sdk.navigation.horizon.elements.countryinformation.CountryInformationElement.countryCodeIso3.
  • Use com.tomtom.sdk.safetylocations.model.SafetyLocation in com.tomtom.sdk.navigation.horizon.elements.safetylocation.SafetyLocationElement instead of safetyLocationId, startPosition, endPosition, boundingBox, type, speedLimit, recommendedWarningDistance, and isZone properties.

Fixes

  • Fix crash for re-creating openLR decoder.

Updates

  • OffboardNavigationTileStore now supports prefetching navigation tiles along a given polyline.
  • Improve API documentation for com.tomtom.sdk.navigation.guidance.instruction.GuidanceInstruction.
  • Promote LocationContext to GA.
  • Update API documentation: com.tomtom.sdk.navigation.GuidanceUpdatedListener.

Routing

Fixes

  • Leaking of native-allocated memory. This should prevent the crashes related to std::bad_alloc, related to running out of memory.

Search

Fixes

  • Fix for a crash while creating of online search engine instance with custom pois support.
  • Fix searching with personal locations and custom poi.

version 0.38.0 - 21/11/2023

General

Breaking changes

  • Announce updated properties via VehicleUpdateListener in package com.tomtom.sdk.vehicle.
  • Remove adding specific vehicle property listeners of VehicleProvider in package com.tomtom.sdk.vehicle.
  • Rename DefaultVehicleProvider.updateVehicleState to DefaultVehicleProvider.updateVehicle in package com.tomtom.sdk.vehicle.

Updates

  • Add updateVehicle and setVehicle from DefaultVehicleProvider to VehicleProvider interface in package com.tomtom.sdk.vehicle.
  • Add missing API documentation for SystemClockTimeProvider.
  • Add missing API documentation for UniqueId.
  • Add missing API documentation for Uris.
  • Add missing documentation for ViewBoundaries.
  • Add missing documentation for Feature.
  • Add missing documentation for FeatureCollection.
  • Add missing documentation for Polygon.
  • Add missing documentation for Result.
  • Improve inline documentation of PropertyId in com.tomtom.sdk.vehicle.property.PropertyId.
  • Improve inline documentation of each VehicleProperty, ElectricEngineProperty, and CombustionEngineProperty in `com.tomtom.sdk.vehicle.property.

Location

Updates

  • Add missing documentation for AndroidLocationProvider.
  • Add missing documentation for AndroidLocationProviderConfig.
  • Add missing documentation for GeoBias.
  • Add missing documentation for GeoBounds.
  • Add missing documentation for GmsLocationProvider.
  • Add missing documentation for MapMatchedLocationProvider.
  • Add missing documentation for ProxyLocationProvider and SimulationLocationProvider.
  • Add missing information about Place.
  • Improve kDocs of TimestampStrategy, InterpolationStrategy.

Map

Breaking changes

  • DataProviderFactory is for internal use.

Fixes

  • Fix API doc.

undefined

  • Introduce on-route traffic developer portal documentation.

Updates

  • Add performance test for display route with data and clear route.
  • Expand demo app with search visualization EV station.
  • Release note message.
  • Update default Genesis style to 25.1., fix the default Orbis style to 0.2..
  • Update Orbis map copyrights endpoint.

Breaking changes

  • RouteStopProgress component functions removed.
  • RouteStopProgress copy removed.
  • Downgrade API state from public preview to experimental for com.tomtom.sdk.navigation.horizon.dataadapter.safetylocations.online.OnlineSafetyLocationsDataAdapterFactory and com.tomtom.sdk.navigation.horizon.dataadapter.SafetyLocationDataObject as they depend on the experimental feature. APIs for safetylocations will be promoted in a later stage.
  • Remove com.tomtom.sdk.navigation.horizon.HorizonOptions.minDistanceAhead and add com.tomtom.sdk.navigation.horizon.MainPathSearchOptions.minDistanceAhead.
  • Remove default values for RouteStopProgress properties.
  • Remove location context provider engine from Configuration, TomTomNavigationFactory, and NavigationContext.
  • Remove public setters from AdasisConfiguration and Topology configuration classes.
  • Remove the default value for com.tomtom.sdk.navigation.horizon.ExplicitDistancePolicy.searchDistance.
  • Remove the default value for com.tomtom.sdk.navigation.horizon.PathSearchDistance.maxHorizonLength.
  • Removed class com.tomtom.sdk.navigation.mapmatching.common.MakeRouteWindowKt. Removed method com.tomtom.sdk.navigation.mapmatching.common.MappersKt.toFallbackMapMatchingResult(com.tomtom.sdk.navigation.LocationSnapshot)`
  • Rename RouteStopsProgress to RouteStopProgress.
  • Resolve dependency of public APIs on internal APIs in com.tomtom.sdk.datamanagement.

Fixes

  • Avoid ConcurrentModificationException upon network availability changes.

Updates

  • Com.tomtom.sdk.navigation.addLanguageChangedListener(LanguageChangedlListener) is now available in General Availability.
  • Com.tomtom.sdk.navigation.LanguageChangedlListener is now available in General Availability.
  • Com.tomtom.sdk.navigation.removeLanguageChangedListener(LanguageChangedlListener) is now available in General Availability.
  • Add missing API documentation for AnnouncementMode.
  • Bring DataStoreSelectionStrategy into public preview.
  • Describe RouteAddedListener, RouteRemovedListene`r, and `ActiveRouteChangedListener in the documentation. Provide an example in the Building a navigation app tutorial on how to redraw a route when the replanning has been completed.
  • Improve kDocs of AnnouncementType.
  • Improve kDocs of LaneGuidanceUpdate.
  • Move Safety Locations API from experimental to PP.
  • Promote RouteStopProgress to General Availability.
  • Refine horizon regional speed limit comment.
  • Update API documentation: com.tomtom.sdk.navigation.LaneGuidanceUpdatedListener.

Routing

Breaking changes

  • Extend com.tomtom.sdk.routing.route.section.Section with new com.tomtom.sdk.routing.route.section.Section.sectionLocation property.
  • Remove default values for ChargingOptions.
  • Remove internal infrastructure functions from the public interface.

Deprecations

  • Deprecate com.tomtom.sdk.routing.route.section.Section.geometry property in favor of com.tomtom.sdk.routing.route.section.Section.sectionLocation.

Fixes

  • Fix flaky CI tests.
  • Mitigate crashes by sanitizing online route sections.

Updates

  • Com.tomtom.sdk.routing.route.Consumption is now available in General Availability.

Search

Breaking changes

  • Convert EntryPoint from data class to normal class.
  • Remove unneeded experimental generated data class class methods from POI.

Deprecations

  • Deprecate unneeded generated data class class methods from Poi.

Fixes

  • Fix searching with hybrid, where result type filters other than POI return nothing.

Updates

  • accessibleVehicleTypes and fuelTypes members in the class com.tomtom.sdk.location.poi.Poi are now available in General Availability.
  • Search.sendFeedback is now available in General Availability.

version 0.37.0 - 14/11/2023

General

Breaking changes

  • Rename AdrTunnelRestrictionCodeProperty.option to AdrTunnelRestrictionCodeProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename AltitudeChangeEfficiencyProperty.option to AltitudeChangeEfficiencyProperty.id in package com.tomtom.sdk.vehicle.property.engine.
  • Rename AltitudeChangeEnergyProperty.option to AltitudeChangeEnergyProperty.id in package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename AuxiliaryPowerProperty.option to AuxiliaryPowerProperty.id in package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename AxleWeightProperty.option to AxleWeightProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename BatteryCurveProperty.option to BatteryCurveProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename ChargingConnectorsProperty.option to ChargingConnectorsProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename ChargingTimeOffsetProperty.option to ChargingTimeOffsetProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename CombustionEngineProperties.option to CombustionEngineProperties.id in package com.tomtom.sdk.vehicle.property.
  • Rename CommercialVehicleProperty to IsCommercialProperty in com.tomtom.sdk.vehicle.property.
  • Rename CommercialVehicleProperty.option to CommercialVehicleProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename CurrentChargeProperty.option to CurrentChargeProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename CurrentFuelProperty.option to CurrentFuelProperty.id in package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename ElectricEngineProperties.option to ElectricEngineProperties.id in package com.tomtom.sdk.vehicle.property.
  • Rename FuelEnergyDensityProperty.option to FuelEnergyDensityProperty.id in package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename HeightProperty.option to HeightProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename LengthProperty.option to LengthProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename LoadTypeProperty.option to LoadTypeProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename MaxChargeProperty.option to MaxChargeProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename MaxSpeedProperty.option to MaxSpeedProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename PropertyId.CommercialVehicle to PropertyId.IsCommercial in com.tomtom.sdk.vehicle.property.PropertyId.
  • Rename SpeedConsumptionProperty.option to SpeedConsumptionProperty.id in package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename SpeedConsumptionProperty.option to SpeedConsumptionProperty.id in package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename VehicleUpdateOption to PropertyId in package com.tomtom.sdk.vehicle.
  • Rename vehicleUpdateOptions parameter to trackedProperties in addVehicleUpdatedListener method of DefaultVehicleProvider in package com.tomtom.sdk.vehicle.
  • Rename VelocityChangeEfficiencyProperty.option to VelocityChangeEfficiencyProperty.id in package com.tomtom.sdk.vehicle.property.engine.
  • Rename WeightProperty.option to WeightProperty.id in package com.tomtom.sdk.vehicle.property.
  • Rename WidthProperty.option to WidthProperty.id in package com.tomtom.sdk.vehicle.property.

Deprecations

  • Deprecate and replace decimal bytes units with binary ones. Do the following to adapt your project to these API changes:
    • Replace usage of the Memory.Unit.Kilobytes object with the Memory.Unit.Kibibytes.
    • Replace usage of the Memory.Unit.Megabytes object with the Memory.Unit.Mibibytes.
    • Replace usage of the Memory.Unit.Gigabytes object with the Memory.Unit.Gibibytes.
    • Replace usage of the Memory.inBytes() api with the Memory.inWholeBytes().
    • Replace usage of the Memory.inKilobytes() api with the Memory.inKibibytes().
    • Replace usage of the Memory.inMegabytes() api with the Memory.inMibibytes().
    • Replace usage of the Memory.inGigabytes() api with the Memory.inGibibytes().
    • Replace usage of the Memory.inWholeKilobytes() api with the Memory.inWholeKibibytes().
    • Replace usage of the Memory.inWholeMegabytes() api with the Memory.inWholeMibibytes().
    • Replace usage of the Memory.inWholeGigabytes() api with the Memory.inWholeGibibytes().
    • Replace usage of the Memory.bytes(value: Double) api with Memory.bytes(value: Long) or Memory.bytes(value: Int)
    • Replace usage of the Memory.kilobytes(value: Int) api with the Memory.kibibytes(value: Int).
    • Replace usage of the Memory.kilobytes(value: Long) api with the Memory.kibibytes(value: Long).
    • Replace usage of the Memory.kilobytes(value: Double) api with the Memory.kibibytes(value: Double).
    • Replace usage of the Memory.megabytes(value: Int) api with the Memory.mibibytes(value: Int).
    • Replace usage of the Memory.megabytes(value: Long) api with the Memory.mibibytes(value: Long).
    • Replace usage of the Memory.megabytes(value: Double) api with the Memory.mibibytes(value: Double).
    • Replace usage of the Memory.gigabytes(value: Int) api with the Memory.gibibytes(value: Int).
    • Replace usage of the Memory.gigabytes(value: Long) api with the Memory.gibibytes(value: Long).
    • Replace usage of the Memory.gigabytes(value: Double) api with the Memory.gibibytes(value: Double).
  • Deprecate the extension Result<R, L&gt;.toEither.

Map

Updates

  • com.tomtom.sdk.map.display.route.RouteSection is now available in General Availability.

Breaking changes

  • Rename com.tomtom.sdk.navigation.ui.NavigationUiOptions.units to com.tomtom.sdk.navigation.ui.NavigationUiOptions.unitSystemType.
  • Replace com.tomtom.sdk.common.measures.UnitSystem with com.tomtom.sdk.navigation.UnitSystemType in com.tomtom.sdk.navigation.ui.NavigationUiOptions.
  • Replace TomTomNavigation::acceptProposedRoute with TomTomNavigation::selectActiveRoute.

New Features

  • Add new route as active to the session when language is changed and inform integrator.
  • Introduce the ActiveRouteChangedListener to inform about the active route changes in the navigation session.
  • Introduce the RouteAddedListener to inform about new routes added to the navigation session.
  • Introduce the RouteRemovedListener to inform about routes removed from the navigation session.
  • Use Virtual Horizon to get location context information beyond driver's visible horizon. A guide for how to retrieve horizon data has been made available in our Nav SDK documentation.

Fixes

  • Display 'Fixed Speed Camera' type correctly.

Updates

  • Com.tomtom.sdk.navigation.TomTomNavigation.language is now available in General Availability.
  • Com.tomtom.sdk.navigation.TomTomNavigation.preferredLanguage is now available in General Availability.
  • Com.tomtom.sdk.navigation.TomTomNavigation.unitSystem is now available in General Availability.
  • Add parcelable support to com.tomtom.sdk.navigation.UnitSystemType.
  • Change default guidance engine to DynamicGuidanceEngine.
  • Copy the description of inherited properties from GuidanceInstruction.
  • Log necessary information about navigation's configuration.

Routing

New Features

  • Separate avoid tolls and vignettes.

Fixes

  • LDEV now supports replanning after deviation.

Updates

  • Allow requesting a route without instructions.

Search

Breaking changes

  • Make toPlace in Search UI internal.
  • Move Poi, PoiCategory, CategoryId, OpeningHours, OpeningHoursMode, ChargingPark, PoiId, Source, StandardCategoryId classes from Search to Location. And move FuelType to Vehicle. Move or rename com.tomtom.sdk.search.model.poi.Poi to com.tomtom.sdk.location.poi.Poi Move or rename com.tomtom.sdk.search.model.poi.PoiId to com.tomtom.sdk.location.poi.PoiId Move or rename com.tomtom.sdk.search.model.result.Source to com.tomtom.sdk.location.poi.Source Move or rename com.tomtom.sdk.search.model.poi.PoiCategory to com.tomtom.sdk.location.poi.PoiCategory Move or rename com.tomtom.sdk.search.model.poi.CategoryId to com.tomtom.sdk.location.poi.CategoryId Move or rename com.tomtom.sdk.search.model.poi.StandardCategoryId to com.tomtom.sdk.location.poi.StandardCategoryId Move or rename com.tomtom.sdk.search.model.poi.Brand to com.tomtom.sdk.location.poi.Brand Move or rename com.tomtom.sdk.search.model.time.OpeningHours to com.tomtom.sdk.location.poi.time.OpeningHours Move or rename com.tomtom.sdk.search.model.time.OpeningHoursMode to com.tomtom.sdk.location.poi.time.OpeningHoursMode Move or rename com.tomtom.sdk.search.model.fuel.FuelType to com.tomtom.sdk.vehicle.FuelType

Fixes

  • Make search find streets and addresses when searched along with a search area.
  • Use proper timezone for custom POI in the offline search engine.

Updates

  • Remove annotation which is not in use anymore.
    • The ExperimentalHybridReverseGeocoderApi annotation is not needed anymore, the API is already in GA

Traffic

Updates

  • Added new TrafficClient implementation.

version 0.36.0 - 03/11/2023

General

Breaking changes

  • Rename AdrTunnelRestrictionCodeParameter to AdrTunnelRestrictionCodeProperty.
  • Rename AltitudeChangeEfficiencyParameter to AltitudeChangeEfficiencyProperty and move to package com.tomtom.sdk.vehicle.property.engine.
  • Rename AltitudeChangeEnergyParameter to AltitudeChangeEnergyProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename AuxiliaryFuelPower to AuxiliaryPowerProperty and move to package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename AuxiliaryPower to AuxiliaryPowerProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename BatteryCurve to BatteryCurveProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename ChargingConnectors to ChargingConnectorsProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename ChargingTimeOffset to ChargingTimeOffsetProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename CombustionEngineParameter to CombustionEngineProperty and move to package com.tomtom.sdk.vehicle.property.engine.
  • Rename CombustionEngineParameters to CombustionEngineProperties.
  • Rename CurrentCharge to CurrentChargeProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename CurrentFuel to CurrentFuelProperty and move to package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename ElectricEngineParameter to ElectricEngineProperty and move to package com.tomtom.sdk.vehicle.property.engine.
  • Rename ElectricEngineParameters to ElectricEngineProperties.
  • Rename FuelEnergyDensity to FuelEnergyDensityProperty and move to package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename LoadType to LoadTypeProperty.
  • Rename MaxCharge to MaxChargeProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename MaxSpeed to MaxSpeedProperty.
  • Rename package com.tomtom.sdk.vehicle.parameters to com.tomtom.sdk.vehicle.property.
  • Rename parameter updatedParameters to updatedProperties in method updateVehicleState of DefaultVehicleProvider.
  • Rename SpeedConsumption to SpeedConsumptionProperty and move to package com.tomtom.sdk.vehicle.property.engine.electric.
  • Rename SpeedFuelConsumption to SpeedConsumption and move to package com.tomtom.sdk.vehicle.property.engine.combustion.
  • Rename VehicleHeight to HeightProperty.
  • Rename VehicleLength to LengthProperty.
  • Rename VehicleParameter to VehicleProperty.
  • Rename VehicleUpdateOption.AuxiliaryFuelPower to VehicleUpdateOption.CombustionAuxiliaryPower.
  • Rename VehicleUpdateOption.AuxiliaryPower to VehicleUpdateOption.ElectricAuxiliaryPower.
  • Rename VehicleUpdateOption.SpeedConsumption to VehicleUpdateOption.ElectricSpeedConsumption.
  • Rename VehicleUpdateOption.SpeedFuelConsumption to VehicleUpdateOption.CombustionSpeedConsumption.
  • Rename VehicleWidth to WidthProperty.
  • Rename VelocityChangeEfficiencyParameter to VelocityChangeEfficiencyProperty and move to package com.tomtom.sdk.vehicle.property.engine.

Fixes

  • Reconnect to mqtt after a disconnection.
  • Reduce number of dependencies in unified location decoder module.

Updates

  • Add API docs to RangeCalculator implementations.

Map

New Features

  • Add support of camera operators, camera updates and gestures for Premium map display.

Fixes

  • Fix a ElasticMapStore crash upon screen rotation.
  • Fix missing link in API documentation.

Updates

  • Map Display Copyrights component tests.

Breaking changes

  • Rename the module dependencies for onboard-nds-store. Do the following to adapt your project setup:
  • Replace com.tomtom.sdk:onboard-nds-store with com.tomtom.sdk.datamanagement:nds-store for the dependency setup in the gradle files.

Fixes

  • Disable flaky test unifiedMapDataAccessHandleIsCreated.
  • Fix manual route acceptance.
  • Remove finalize from native offboard tile store.

Updates

  • Remove Server3FeatureToggle.

Routing

Deprecations

  • Deprecate value class com.tomtom.sdk.routing.options.calculation.ComputeTravelTimeFor.

Updates

  • Com.tomtom.sdk.routing.route.section.traffic.MagnitudeOfDelay is now available in General Availability.

Search

Breaking changes

  • Improve the API interface for custom POI provider. Use com.tomtom.sdk.search.customdata.CustomPoiProvider instead of com.tomtom.sdk.search.customdata.CustomSearchDataProvider. Use com.tomtom.sdk.search.customdata.CustomPoi instead of com.tomtom.sdk.search.model.customdata.CustomRecord.CustomPoi. OfflineSearch, OnlineWithCustomPoiSearch and HybridSearch overloaded factory method create takes List<CustomPoiProvider> instead of List<CustomSearchDataProvider<CustomRecord.CustomPoi>>

Updates

  • Add missing Poi category Ids.
  • Promote structured search API public preview to General Availability.

version 0.35.0 - 31/10/2023

General

Breaking changes

  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegion is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionGraph is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionId.value property is no longer a public one.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionOperation is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionState is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionStatesData is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CurrentCompositeRegionOperation is no longer a data class.

Fixes

  • Fixed increase in apk size due to number of dependencies.
  • Remove superfluous closing brace from `NdsStore.create.
  • Resolve a MissingResourceException when trying to use online safety locations with the horizon engine.

Updates

  • Add nanodegrees unit to Angle and Angle getter to GeoPoint.
  • Improve kdoc for the various ConnectorType values.
  • Log RuntimeFeature toggle changes.
  • Mark all experimental API annotation class Experimental*Api as experimental.

Map

New Features

  • Add the ability to set POI click listener for the ones found through Search feature.
  • Extend SearchConfiguration API from Search visualization module.
  • Implement setting style in premium map display.
  • Introduce the Elastic Data Provider API for map visualization.
  • Simple route visualization in premium map display.

Fixes

  • Fix crash in premium map display when trying to access protobuf messages.
  • Fix maneuver arrows.

Updates

  • Add component tests for the com.tomtom.sdk.map.display.map.
  • Move the NavigationEventDispatcher and FollowCameraConfiguration to public preview.
  • Promote to GA: RouteOptions class with all the fields: - geometry: List<GeoPoint> - color: Int - outlineWidth: Double - widths: List<WidthByZoom> - visible: Boolean - progress: Distance - instructions: List<Instruction> - tag: String? - departureMarkerVisible: Boolean - destinationMarkerVisible: Boolean - isFollowable: Boolean - routeOffset: List<Distance> - sections: List<RouteSection> - departureMarkerPinImage: Image? - destinationMarkerPinImage: Image? - departure: GeoPoint? - destination: GeoPoint? RouteSection class with all the fields: - type: RouteSectionType - indexRange: IntRange - textureUri: Uri?

Breaking changes

  • Introduce com.tomtom.sdk.navigation.TomTomNavigation.preferredLanguage property for updating current navigation language.
  • Make com.tomtom.sdk.navigation.TomTomNavigation.language property read only.
  • Remove com.tomtom.sdk.navigation.NavigationHistorySnapshot class.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode parameter from the com.tomtom.sdk.navigation.TomTomNavigationFactory factory method.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode property from the com.tomtom.sdk.navigation.hybrid.Configuration.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode property from the com.tomtom.sdk.navigation.offline.Configuration.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode property from the com.tomtom.sdk.navigation.offroad.Configuration.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode property from the com.tomtom.sdk.navigation.online.Configuration.
  • Remove com.tomtom.sdk.navigation.replanning.MaintainRoutesMode.
  • Rename com.tomtom.sdk.navigation.TomTomNavigation.markWaypointAsVisited.
  • Revise persistent cache configuration parameters.
  • The com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStoreConfiguration is no longer a data class.
  • Use common safety location data in horizon adapter.

New Features

  • Introduce com.tomtom.sdk.navigation.TomTomNavigation.deviationReplanningMode property for updating current deviation replannig mode.
  • Introduce a new API NdsStore.findRegionsAlongPolyline.

Fixes

  • "Build a navigation app" use case tutorial invokes navigation start on route click only if navigation is not already running.
  • Call start and shutdown for mock tile server.
  • Crash in TomTomNavigation.stop.
  • Fix crash in traffic module due to missing method.
  • Improvement in native pointer handling.

Updates

  • "Build a navigation app" renamed to "Building a navigation app".
  • Com.tomtom.sdk.navigation.DestinationArrivalListener is now available in General Availability.
  • Com.tomtom.sdk.navigation.TomTomNavigation.addDestinationArrivalListener.
  • Com.tomtom.sdk.navigation.TomTomNavigation.departFromWaypoint.
  • Com.tomtom.sdk.navigation.TomTomNavigation.removeDestinationArrivalListener.
  • Com.tomtom.sdk.navigation.WaypointArrivalListener is now available in General Availability.
  • Move Artifactory instructions from the project setup guide.
  • NavigationOptions is now in General Availability.
  • Prefetch navigation tiles along the active route. Prefetching affects data consumption (downloading tiles) from the cloud when route is activated
  • Promote com.tomtom.sdk.navigation.TomTomNavigation.addWaypointArrivalListener.
  • Promote com.tomtom.sdk.navigation.TomTomNavigation.removeWaypointArrivalListener.
  • RoutePlan is now in General Availability.
  • Use common safety location data in SafetyLocations.

Routing

Breaking changes

  • Make RangeCalculationOptions a normal class.
  • Remove copy function from RoutePoint.
  • Rename com.tomtom.sdk.routing.route.section.traffic.MagnitudeOfDelay.UNDEFINED to INDEFINITE.

Deprecations

  • Deprecate copy.
  • Deprecate extension function RoutePoint.angleTo.
  • Deprecate extension function RoutePoint.distanceTo.

New Features

  • Toll cost indication.

Updates

  • Add information about charging stops to EV routes doc.
  • Add unsupported route planning options to EV routing documentation.
  • Com.tomtom.sdk.routing.route.RoutePoint is now available in General Availability.
  • Convert CarpoolSection data class to normal class.
  • Convert CarTrainSection data class to normal class.
  • Convert CountrySection data class to normal class.
  • Convert FerrySection data class to normal class.
  • Convert LaneSection data class to normal class.
  • Convert LowEmissionZoneSection data class to normal class.
  • Convert MotorwaySection data class to normal class.
  • Convert PedestrianSection data class to normal class.
  • Convert RoadShieldSection data class to normal class.
  • Convert TollRoadSection data class to normal class.
  • Convert TollVignetteSection data class to normal class.
  • Convert TrafficSection data class to normal class.
  • Convert TunnelSection data class to normal class.
  • Convert UnpavedSection data class to normal class.
  • Convert UrbanSection data class to normal class.
  • Convert VehicleRestrictedSection data class to normal class.
  • Document Orbis unsupported options.
  • Improve range documentation comments.
  • Improve resilience to changes in Routing Service.
  • Promote com.tomtom.sdk.routing.options.calculation.ArrivalSidePreference to GA.
  • Promote com.tomtom.sdk.routing.options.RoutePlanningOptions.arrivalSidePreference to GA.
  • Promote com.tomtom.sdk.routing.route.section.traffic.SimpleCategory to GA.
  • Property Route.destination is now available in General Availability.
  • Property Route.geometry is now available in General Availability.
  • Property Route.origin is now available in General Availability.
  • Property Route.planningReason is now available in General Availability.
  • Property Route.routePoints is now available in General Availability.
  • Property Route.waypoints is now available in General Availability.

Search

Breaking changes

  • Module: search:structured-search-client-onboard. Removed package com.tomtom.sdk.search.structuredsearch.offline.domain [RemovedPackage]

Deprecations

  • Deprecate the SearchOptions constructor for a search request containing maxDetourDuration. Use the SearchOptions constructor for a search request which doesn't contain maxDetourDuration instead. Do the following to adapt your project to these API changes:
  • Remove all usage of maxDetourDuration for a search request
  • Use the constructor for a search along the route request if maxDetourDuration needs to be set

Fixes

  • Add missing tests for recents, improve deduplication logic.
  • Ignore coordinate search results outside of the onboard map coverage area, as these results are not usable.
  • Make offline results not mix the online search results when searched with personal locations.
  • Return a single search result for the coordinate search.
  • Revert fix for returning a single search result for the coordinate search. Need to handle query intents in a holistic way.

Updates

  • Move experimental standard category IDs to GA.
  • Use common tests for personal locations and custom POIs.

version 0.34.0 - 24/10/2023

General

Breaking changes

  • From now on, use com.tomtom.sdk.featuretoggle.TomTomOrbisMapFeature instead of com.tomtom.sdk.featuretoggle.TomTomMapsPlatformFeature, allowing you to toggle the TomTom Orbis Maps within your application. For additional details, please refer to this link.
  • The com.tomtom.sdk.datamanagement.nds.update.CompletedMapOperation is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionChangedListener has been renamed to com.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionListener.
  • The com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeState is no longer a data class.
  • The com.tomtom.sdk.datamanagement.nds.update.RegionsAroundPosition is no longer a data class.

New Features

  • NavigationTileStore: added persistent cache for downloaded NDS.Live tiles.

Fixes

  • Resolved a MissingResourceException when trying to use online safety locations with the Horizon Engine.

Updates

  • Promoted objects under com.tomtom.sdk.datamanagement.locationdecoder package to Public Preview.
  • Use Java's AutoCloseable explicitly.

Map

Fixes

  • Fixed maneuver arrows.

Updates

  • Stop map rendering in onStop rather then in onPause.
  • Updated the POIVisualization modules to follow the naming convention for Poi.

Breaking changes

  • NavigationOptions is no longer a data class.
  • RoutePlan is no longer a data class.
  • RouteTrackingEngine now returns one RouteTrackingState instead of the list.
  • RouteTrackingState now contains a list of followed and unfollowed routes.
  • RouteTrackingState now contains the hasDeviated property, which indicates whether the user has deviated from all of the routes.
  • All Hazard related classes are marked as Experimental.
  • Changed the type of LocationContext.speed from com.tomtom.quantity.Speed? to com.tomtom.quantity.Speed.
  • Removed com.tomtom.sdk.navigation.horizon.dataadapter.OpenLocationReference class from public API.
  • Removed unneeded toString(), equals() and hashCode() from HorionElementType classes.
  • Rename com.tomtom.sdk.navigation.DestinationReachedListener.onDestinationReached(Route)to`com.tomtom.sdk.navigation.DestinationArrivalListener.onDestinationArrived(Route)`.
  • Renamed com.tomtom.sdk.navigation.DestinationReachedListener to com.tomtom.sdk.navigation.DestinationArrivalListener.
  • Renamed com.tomtom.sdk.navigation.horizon.HorizonSnapshotState.extensionCounter to com.tomtom.sdk.navigation.horizon.HorizonSnapshotState.updateCounter.
  • Renamed com.tomtom.sdk.navigation.TomTomNavigation.addDestinationReachedListener(DestinationReachedListener)to`com.tomtom.sdk.navigation.TomTomNavigation.addDestinationArrivalListener(DestinationArrivalListener)`.
  • Renamed com.tomtom.sdk.navigation.TomTomNavigation.removeDestinationReachedListener(DestinationReachedListener)to`com.tomtom.sdk.navigation.TomTomNavigation.removeDestinationArrivalListener(DestinationArrivalListener)`.
  • Renamed horizon element City to CityElement.
  • Renamed horizon element CountryInformation to CountryInformationElement.
  • Renamed horizon element DangerousGoodsRestriction to DangerousGoodsRestrictionElement.
  • Renamed horizon element GeneralRoadProperties to GeneralRoadPropertiesElement.
  • Renamed horizon element Hazard to HazardElement.
  • Renamed horizon element PathGeometry to PathGeometryElement.
  • Renamed horizon element Region to RegionElement.
  • Renamed horizon element SafetyLocation to SafetyLocationElement.
  • Renamed horizon element SpeedLimit to SpeedLimitElement.
  • Renamed horizon element Street to StreetElement.
  • Renamed horizon element TrafficSign to TrafficSignElement.
  • Renamed horizon element VehicleRestriction to VehicleRestrictionElement.
  • Replaced com.tomtom.sdk.navigation.WaypointArrivalListener.onWaypointReached(RouteStop)with`com.tomtom.sdk.navigation.WaypointArrivalListener.onWaypointArrived(RouteStop, Route)`.
  • Replaced com.tomtom.sdk.navigation.WaypointArrivalListener.onWaypointVisited(RouteStop)to`com.tomtom.sdk.navigation.WaypointArrivalListener.onWaypointDeparted(RouteStop, Route)`.

New Features

  • Added support for Bulgarian, Catalan, Slovak in spoken messages.

Fixes

  • Fixed crash in traffic module due to missing method.

Updates

  • Added back to road appearing check to repeat instructionPhases correctly.
  • Guidance triggering config updated.
  • Improved SynchronizedNavigationEngineRegistry.
  • Improved inline documentation for NavigationOptions and RoutePlan.
  • Merged map matching binding module with map matching common engine module.

Routing

Breaking changes

  • Marked com.tomtom.sdk.routing.online.common.model.description.VehicleEngineJsonModel as internal.
  • Marked com.tomtom.sdk.routing.online.common.model.description.VehicleLoadJsonModel as internal.
  • Removed class com.tomtom.sdk.routing.online.model.diagnostic.EffectiveSetting.
  • Removed class com.tomtom.sdk.routing.online.model.diagnostic.Report.
  • Removed class com.tomtom.sdk.routing.options.description.ReportType.

Deprecations

  • Deprecated copy() and componentN() functions of RouteLeg class.

Fixes

  • EV Routing supports only Car, Bus, Van, and Motorcycle vehicle types.

Updates

  • com.tomtom.sdk.routing.coroutines.flow.RoutingException is now available in General Availability.
  • com.tomtom.sdk.routing.options.guidance.RouteIncrementOptions is now available in General Availability.
  • com.tomtom.sdk.routing.route.ComputedAs is now available in General Availability.
  • com.tomtom.sdk.routing.route.PlanningReason is now available in General Availability.
  • com.tomtom.sdk.routing.route.RouteStop.SourceType is now available in General Availability.
  • com.tomtom.sdk.routing.route.RouteStop is now available in General Availability.
  • com.tomtom.sdk.routing.RoutePlanningResponse is now available in General Availability.
  • com.tomtom.sdk.routing.RoutingFailure.IncrementRouteContentsFailure is now available in General Availability.
  • com.tomtom.sdk.routing.RoutingFailure.InstructionGenerationFailure is now available in General Availability.
  • com.tomtom.sdk.routing.RoutingFailure.MapInaccessibleFailure is now available in General Availability.
  • `com.tomtom.sdk.routing.RoutingFailure.MergeLaneSectionsFailure`is now available in General Availability.
  • com.tomtom.sdk.routing.RoutingFailure.RouteInstructionsFailure is now available in General Availability.
  • com.tomtom.sdk.routing.RoutingFailure.RouteReconstructionFailure is now available in General Availability.
  • `com.tomtom.sdk.routing.RoutingFailure.RouteReplanningFailure`is now available in General Availability.
  • InstructionType is now available in General Availability.
  • RoutePlanner.planRouteAsFlow() is now available in General Availability.
  • Clarified the documentation of the apiUri parameter.
  • Converted RouteLeg data class to class.
  • Removed`RouteIncrementOptions` from Public Preview.

Search

New Features

  • Support added for area personal locations in offline search.

Fixes

  • Made additional data work with Orbis backend.
  • Support added for coordinate search results in offline search response.

Updates

  • Documented geopolitical view for offline and hybrid search.

version 0.33.1 - 10/10/2023

General

Breaking changes

  • The com.tomtom.sdk.datamanagemenr.nds.update.RegionGraph is no longer data class.
  • Extract the MapOperation class from the com.tomtom.sdk.datamanagemenr.nds.NdsStore and change package to com.tomtom.sdk.datamanagemenr.nds.update.
  • Move the locale filed from com.tomtom.sdk.datamanagemenr.nds.NdsStoreConfiguration to com.tomtom.sdk.datamanagement.nds.NdsStoreUpdateConfig.
  • Remove keystorePassword field from com.tomtom.sdk.datamanagemenr.nds.NdsStoreConfiguration.
  • Rename the com.tomtom.sdk.datamanagemenr.nds.update.MapOperation.node property to the com.tomtom.sdk.datamanagemenr.nds.update.MapOperation.nodeId.
  • Rename the com.tomtom.sdk.datamanagemenr.nds.update.MapOperation.operation property to the com.tomtom.sdk.datamanagemenr.nds.update.MapOperation.type.
  • Rename the com.tomtom.sdk.datamanagemenr.nds.UpdateErrorCode to com.tomtom.sdk.datamanagement.nds.MapUpdateError.
  • Rename the NdsStore API methods: addOnUpdateListener has been renamed to addMapUpdatedListener UpdateListener has been renamed to MapUpdatedListener removeOnUpdateListener has been renamed to removeMapUpdatedListener addOnAutomaticUpdateFailureListener has been renamed to addAutomaticMapUpdateFailureListener AutomaticUpdateFailureListener has been renamed to AutomaticMapUpdateFailureListener removeOnAutomaticUpdateFailureListener has been renamed to removeAutomaticMapUpdateFailureListener.
  • The com.tomtom.sdk.datamanagemenr.nds.NdsStoreConfiguration is no longer data class.
  • The com.tomtom.sdk.datamanagemenr.nds.update.CurrentMapOperation is no longer data class.
  • The com.tomtom.sdk.datamanagemenr.nds.update.MapOperation is no longer data class.
  • The `com.tomtom.sdk.datamanagemenr.nds.update.RegionGraphNode`is no longer data class.
  • The com.tomtom.sdk.datamanagemenr.nds.update.UpdateInfo is no longer data class.
  • The type of RoadProperties.functionalRoadClass is changed to Int? (nullable).

New Features

  • Introduce a feature toggle for TomTom Maps Platform.

Fixes

  • Fix logging in the release builds.
  • Ignore lint test which fails for unknown reason.
  • Prevent obfuscation of runtime features by adding proguard consumer rule.

Updates

  • All DevPortal documentation groovy snippets converted to Kotlin.
  • Fix crash in navigation-example-app for invalid routing options combinations.
  • If NumberOfLanes value is out of valid range [0..15], the result is set as null instead of throwing exceptions.
  • If RoadProperties.functionalRoadClass value is out of valid range [0..7], the result is set as null instead of throwing exceptions.
  • The default value of numberOfLanes in the constructor of RoadProperties is removed.

Map

Breaking changes

  • * in RouteOptions class rename property from followable to isFollowable - in RouteSection class remove properties start, end, geometry and routeOffset - add property indexRange to the RouteSection class - converted RouteOptions and RouteSection from data classes to normal ones - added unit tests for RouteSection.
  • * in RouteOptions class rename property destinationMarkerCoordinate to destination * add property departure.

New Features

  • Add a POI click listener for user interaction with POIs.
  • Add map-display-premium-duo module.
  • Search Visualization module implementation.

Fixes

  • Active route colouring fix.
  • Fix routing visualization flaky tests.

Updates

  • * add the textureUri property to the RouteSection class - change MichiRouteMapper class to draw textures on the map - change RouteDrawer class in maps-demo-app to draw tunnels and not drivible sections with custom textures.
  • Change type of the "properties" member in GeoJsonMarkerOptions and GeoJsonPolylineOptions.
  • Extend CameraOptions API reference documentation.
  • Use premium map display with disabled unity splash screen.

Breaking changes

  • Remove the BackToRouteOptions from the public API.
  • Remove the RouteUpdateOptions from the public API.
  • RouteReplanner methods expect NavigationSnapshot as the only parameter instead of RouteUpdateOptions, BackToRouteOptions, and RouteIncementOptions.
  • RouteReplanner methods return RouteReplannerResponse instead of RoutePlanningResponse when the result is successful.

New Features

  • Add rules for displaying Japan current road.
  • Support city district, neighborhood and subCountry in horizon-based LocationContext.

Fixes

  • Catch exceptions thrown from horizon core.
  • Continuous route replanning endlessly replans a route with invalid route planning options after initial replanning failure.
  • Fix crash in NDS.Live component that could happen when obfuscation is applied.
  • Modify and enable ignored test.

Updates

  • "Navigation use case" tutorial renamed to "Build a navigation app.".
  • Improve NAV starting guide.
  • On consequent deviations stick to route cut-off gets exponentially bigger.
  • Promote the horizon engine API to Public Preview.
  • The navigation orchestrator catches any exceptions thrown by engines during navigation.

Routing

Breaking changes

  • Implement including a route in an onboard range.

Deprecations

  • Deprecate copy() and componentN() functions of SpeedLimitSection class.
  • Deprecate SpeedLimitSection.speedLimitInKmh: Int property in favor of SpeedLimitSection.speedLimit: Speed.

New Features

  • Delivers junction views along route.

Fixes

  • Charging options can only be used with RouteType.Fast.
  • Explicitly forbid to create requests with chargingOptions and enabled waypointOptimization parameters.
  • Avoid NPE with BorderCrossing routes missing some data.

Updates

  • Add traffic dependency to range-client-onboard.
  • Better error handling in RoutePlanningOptions.
  • Clarify lane guidance section documentation.
  • Convert SpeedLimitSection data class to normal class.
  • Promote Range APIs from Experimental to PP.
  • Release note message.
  • Verify that assembled LDEVR request doesn't contain computeTravelTimeFor parameter.

Search

New Features

  • Online Search implementation with Personal Location data.

Fixes

  • Fix list going out of screen in Personal Locations demo.

Updates

  • Improve demo for Personal Locations with missing Place data.

version 0.32.7 - 04/10/2023

version 0.32.6 - 02/10/2023

General

Fixes

  • Prevent obfuscation of runtime features by adding proguard consumer rule.
  • Fix for missing NDK symbols during integration.

Fixes

  • Continuous route replanning endlessly replans a route with invalid route planning options after initial replanning failure.

version 0.32.0 - 13/09/2023

General

Breaking changes

  • Rename com.tomtom.sdk.hazards.online.HazardSeverity.Low to com.tomtom.sdk.hazards.online.HazardSeverity.Minor.

Fixes

  • Fix publishing consumer proguard rules preventing gosdk minification.

Updates

  • Rename com.tomtom.sdk.navigation.horizon.dataadapter.hazards.online.HazardSeverity.Low to com.tomtom.sdk.navigation.horizon.dataadapter.hazards.online.HazardSeverity.Minor.

Location

Breaking changes

  • RoadType unintentionally was made Generally Available - it is Public Preview.
  • Move com.tomtom.sdk.location.DrivingSide from com.tomtom.sdk.location:model to com.tomtom.sdk.location:location-route and rename to com.tomtom.sdk.location.road.DrivingSide.
  • Move com.tomtom.sdk.location.FineGraindRoadType from com.tomtom.sdk.location:model to com.tomtom.sdk.location:location-route and rename to com.tomtom.sdk.location.road.FineGraindRoadType.
  • Move com.tomtom.sdk.location.RoadType from com.tomtom.sdk.location:model to com.tomtom.sdk.location:location-route and rename to com.tomtom.sdk.location.road.RoadType.
  • Remove the Road suffixes from the values in FineGrainedRoadType.
  • Rename FineGrainedRoadType to RoadType.
  • Rename RoadType to RoadCategory.

Updates

  • Creat new module com.tomtom.sdk-location:location-route.

Map

New Features

  • Expose copyrights caption.

Fixes

  • After changing tracking mode zooming doesn't work.
  • Fix for turn instruction highlighted arrow misplaced .
  • Fix missing companion field in MapFragment.
  • Fix proguard configuration not to remove nested classes of internal SDK classes.
  • Fix the API key for accessing the sprite file is incorrect in vector map and traffic example.

Updates

  • Simplify proguard configuration for map-display modules.
  • Split map-display module into map-display and map-display-common.
  • Use single MapView and MapFragment definition for each mapdisplay flavor.

Breaking changes

  • Change roadType to roadCategory in RegionalSpeedLimit.
  • Change LocationContext from data class to class and remove Road nested class.
  • Change the property com.tomtom.sdk.navigation.locationcontext.LocationContext.road to nullable.
  • Convert data classes in Horizon Engine to classes.
  • Move com.tomtom.sdk.navigation.horizon.elements.generalroadproperties.NumberOfLanes to com.tomtom.sdk.location.road.NumberOfLanes.
  • Move com.tomtom.sdk.navigation.horizon.elements.generalroadproperties.RoadCondition to com.tomtom.sdk.location.road.RoadCondition.
  • Remove com.tomtom.sdk.navigation.horizon.elements.countryinformation.RegionalSpeedLimitType and replace the speed limit with com.tomtom.sdk.location.SpeedLimit.
  • Remove com.tomtom.sdk.navigation.horizon.elements.speedlimit.SpeedLimitsType and replace the speed limit with com.tomtom.sdk.location.SpeedLimit.
  • Remove com.tomtom.sdk.navigation.locationcontext.LocationContext.Road and replace it with com.tomtom.sdk.location.road.RoadProperties.
  • Remove com.tomtom.sdk.navigation.locationcontext.SpeedLimit and replace references to it with references to com.tomtom.sdk.location.SpeedLimit.
  • Remove isWeatherDependent and isTimeDependent field in RegionalSpeedLimitType.
  • Remove road related properties in com.tomtom.sdk.navigation.horizon.elements.generalroadproperties.GeneralRoadProperties and replace those properties with com.tomtom.sdk.location.road.RoadProperties.
  • Rename com.tomtom.sdk.navigation.horizon.elements.hazard.HazardSeverity.Low to com.tomtom.sdk.navigation.horizon.elements.hazard.HazardSeverity.Minor.

New Features

  • Extend RouteProgress with remainingTrafficDelay.
  • Introduce a new class com.tomtom.sdk.location.road.RoadProperties.

Fixes

  • Do not replan when current car position is off-road near origin.
  • Fix crash in traffic module that could happen if user applies obfuscation.
  • Fix Protobuf related crash at navigation initialization.

Updates

  • Improve the documentation of the properties of LocationContext.
  • TomTomNavigation will throw on start and update if vehicle provider has not been properly configured.

Routing

Breaking changes

  • Refactor interface RouteStop to class RouteStop.
  • Remove Origin, Destination, Waypoint classes and replace them with RouteStop class.
  • Remove startOfRoute and endOfRoute properties from Route class.

Fixes

  • Enable runtime switching of endpoints when using OnlineRoutePlanner with custom apiUri. The custom apiUri parameter must contain only the baseURL (without the endpoint). The endpoint will be appended by the OnlineRoutePlanner automatically.

Updates

  • Add waypoints property to Route class.

Search

New Features

  • Add personal locations support to offline search.

Fixes

  • Introduce missing TTOM standard POI categories.

Updates

  • Update documentation for search common module.

version 0.31.1 - 31/08/2023

Routing

Fixes

  • Fix for re-planning crash.

version 0.31.0 - 25/08/2023

General

Updates

  • Update broken links and references in telemetry documentation.

Map

Updates

  • Promote route visualization to GA.
  • Replace horizon api by safety location.
  • Replace navigation visualization data class from public API.
  • Use generic interface where possible.

Breaking changes

  • Prepare navigation visualization to promote to GA.

Routing

Fixes

  • Fixes set_active_route_on_map test failing.

Fixes

  • Fix origin coordinate is wrongly set to 0.0,0.0 while navigating.

New Features

  • Automatic replanning on deviation sticks to route if supporting points are provided in the initial planning.
  • Trigger replan even though destination has been reached.

Breaking changes

  • Replace LocationContext.Address with com.tomtom.sdk.location.Address.

Search

New Features

  • Update documentation for reverse geocoder.

version 0.30.1 - 14/08/2023

Map

Breaking changes:

  • Solve discrepancies with iOS of module routing visualization to promote to GA.

Updates:

  • Expand the CameraTrackingMode type with the configurable classes that can contain FollowCameraOperatorConfig
  • Promote FollowCameraOperatorConfig to publicpreview

Search

Updates:

*

Routing

Breaking changes:

  • Remove context parameter from OfflineRoutePlanner.create() function.

Fixes:

  • Fix waypoints not being updated on selecting alternative route for EV cars on long distance routes.
  • Prevent setting vehicleHeading=360 when planning a route.

Breaking changes:

  • Group number of lanes properties in GeneralRoadProperties.
  • Group tunnel and bridge properties together.
  • Remove properties speedFog, speedSnow and speedRain from horizon API class SpeedLimits. Remove value Variable from horizon API value class SpeedLimitsType.
  • Replace LocationTracesParser.fromAssets(String) method with extension function LocationTracesParser.fromAssets(Context, String).

New features:

  • LocationTracesParser.fromInputStream(InputStream).

Updates:

  • Improve inline documentation for off-road navigation.
  • Promote Hybrid Navigation API to PP

Fixes:

  • Always interpret the input speed limit values as kph.
  • Fix origin coordinate is wrongly set to 0.0,0.0 while navigating.
  • Initialize horizon engine if null in HybridTomTomNavigationFactory

version 0.29.0 - 08/08/2023

Map

New features:

  • Draw a dotted line connecting the drivable and final destination.
  • Geojson-based primitives use JsonObject for properties.
  • NDS.Live bindings and implementation in NavigationTileStore
  • Use unified engines with NDS.Live implementation of NavigationTileStore

Updates:

  • Add versioning info on performance graph

Fixes:

  • Ndslive bindings macOS kmp context failure

Search

New features:

  • Add support for supported vehicle types in the search response for online mode.

Updates:

  • Fix artifact id for custom online search.

Routing

Removals:

  • Updated documentation for track import. Removed incorrect statement about user waypoints support.

Fixes:

  • Prevent setting vehicleHeading=360 when planning a route.

Breaking changes:

  • Change in Public Preview code: com.tomtom.sdk.location.DrivingSide replaces com.tomtom.sdk.traffic.DrivingSide and com.tomtom.sdk.navigation.horizon.elements.countryinformation.DrivingSide

New features:

  • Support tunnel and bridge names in Navigation UI

Updates:

  • Add IntRange checking to the properties of GeneralRoadProperties

Fixes:

  • Notification with the same distance to the next instruction will be sent only once.

version 0.28.0 - 01/08/2023

Map

Breaking changes:

  • Add vehicle restrictions styles for onboard map.

New features:

  • Unsupported GeoJSON Marker operations now throw an exception.

Updates:

  • Add NavigationTileStoreConfiguration values bounds for prefetchedAreaRadiusMeters and cache sizes.
  • Add big groups of markers in batches rather than one by one.
  • Enable smooth style reloading feature by default.
  • Release note message.
  • Remove explicit font names from copyright notice.
  • Update standard style version.

Fixes:

  • Vehicle Restrictions within Routing Visualization

Search

Fixes:

  • Throw NetworkOnMainThreadException when calling Search from the Main Thread.

Routing

Fixes:

  • Create route points for legs with a single arc.

New features:

  • Add tunnel and bridge names in LocationContext.

Updates:

  • Added close() method to TomTomNavigationService that needs to be called before unbindService().
  • Fix namings and documentation in ReplannedRouteValidator and RouteMergerTest.
  • Improve performance by not creating unnecessary lists in RouteMerger.
  • Promote RouteTrackingState to PP.
  • Update the documentation for RouteUpdatedListener.

Fixes:

  • Fix crash in Route.init() that can happen during route refresh.
  • Remove unnecessary dependency to online component from offline route projection.

version 0.27.0 - 25/07/2023

Map

New features:

  • Add support for GeoJson Markers.

Updates:

  • Promote hillshading APIs of StyleController to GA.
  • Use time since boot to calculate duration of location marker’s animation and location accuracy policy.

Removals:

  • Remove camera operators config from style.

Search

Fixes:

  • Handle kNdsCategoryNotFound in android bindings

Routing

New features:

  • Add the possibility to avoid specific charging parks when planning a route with automatically added charging stops.

Breaking changes:

  • Implement OffRoadTomTomNavigationFactory.
  • Removed
  • Removed TomTomNavigationFactory and NavigationConfiguration. Use new navigation factories (e.g. OnlineTomTomNavigationFactory) instead.

Fixes:

  • Improve documentation for addProgressUpdatedListener in TomTomNavigation.

General

Updates:

  • Strip native binaries from debug information for JVM targets.

version 0.26.0 - 07/07/2023

Map

New features:

  • Add support for GeoJson Polylines.

Updates:

  • Follow DDD on NavigationVisualization module
  • Log map tiles download times.

Routing

New features:

  • Support arrival side preference in the offline route planner.

Breaking changes:

  • Rename packages

New features:

  • Traffic section api, bindings and implementation

Updates:

  • The close method also stops navigation.
  • Update documentation for setting GuidanceUpdatedListener.

Fixes:

  • Fix proguard rules forBackToRoutePointCalculator.

Location

New features:

  • Make prediction generator more robust.

General

Fixes:

  • Listener not triggered when changing engine type.

version 0.25.0 - 30/06/2023

Map

New features:

  • Add support for number of axles for Vehicle restriction
  • Expose camera operators customization on the SDK API

Updates:

  • Move first number of safety location from style to API
  • Update navigation visualization safety cameras UX spec

Fixes:

  • Add missing font to Routing Visualization
  • Fix flaky tests for map display binding

Search

Fixes:

  • Add support for address ranges from online search in GOSDK online search.
  • Use the search endpoint even when the category filter is set.

Breaking changes:

  • Data store maintenance is reset when navigation is stopped.
  • Update signature of DataUpdatedListener to use a list of GeoBoundingBox within the component com.tomtom.sdk.navigation:horizon-data-adapter.
  • Updated signature of OnlineHazardsHorizonDataAdapterFactory.create to consume Hazards object.
  • Updated signature of OnlineSafetyLocationsDataAdapterFactory.create to consume SafetyLocations object.

Updates:

  • Vehicle profile test case for horizon-engine-unified.

Fixes:

  • Correct dependencies.
  • DataStoreMaintenanceEngineFactory and DataStoreMaintenanceEngine are visible in SDK.

General

New features:

  • Promote CompositeRegionsUpdater API to public preview

Updates:

  • Convert quantity classes to Kotlin’s value classes.
  • Refactor UnitBase abstract class to an interface.

version 0.24.0 - 23/06/2023

Map

Fixes:

  • Remove redundant animation of the moveCamera() method.

Routing

New features:

  • Extend routing options with arrival side preference.

Updates:

  • Clarify avoid behavior for routing in documentation.
  • Add missingn lez and unpaved sections to documentation

Fixes:

  • Promote arrival side preference to public preview

Updates:

  • Add new factories for online, offline and hybrid navigation.
  • Navigation handles updating of data stores internally.

Fixes:

  • Correct dependencies.
  • DataStoreMaintenanceEngineFactory and DataStoreMaintenanceEngine are visible in SDK.
  • DefaultTomTomNavigation should properly implement AutoCloseable.

General

Updates:

  • Mark interfaces as functional.

Fixes:

  • Throw if the same listener is added multiple times.

version 0.23.1 - 21/06/2023

version 0.23.0 - 16/06/2023

Map

New features:

  • Implement a decision point hint on route manager
  • Release note message.

Updates:

  • Add possibility to run performance test on different zoom levels.
  • Bump style version to 24.2.*
  • Minor optimisation and snippet fix.

Fixes:

  • Fix crash on sprites loading when local cache file cant be opened.
  • Fix false map interaction events
  • Fix rare crash that happened on style load.

Search

Breaking changes:

  • Replace position, address, entryPoints properties in CustomRecord.CustomPoi with Place class.

New features:

  • Add support for address for custom POIs.

Updates:

  • Move online custom POI support to Public Preview

Fixes:

  • Fix for non-findable offline search native library.

Routing

New features:

  • Expose information on when and where path alternative forks off the primary route.
  • Extend routing options with arrival side preference.

Fixes:

  • Fix routing sections mapping.
  • Promote arrival side preference to public preview
  • Release note message.

Breaking changes:

  • Refactor RouteTrackingEngine to handle RouteTrackingState.
  • Renaming dependency

New features:

  • Add waypoint arrival panel to navigation fragment
  • Conversion from a bounding box to a list of tiles.
  • Promote NavigationTileStore API to Public Preview.
  • Rename OnlineLocationContextProvider engines according to convention and move APIs to Public Preview.

Updates:

  • Add translations for waypoint arrival panel
  • Declare click listener parameter for UI components as View.OnClickListener instead of an anonymous type.
  • Filter out Lane Sections with no Direction to follow.
  • Use NavigationConfiguration to createTomTomNavigation in the Navigation use case.

Fixes:

  • Correct timestamps in predictions.
  • Fix potential crash during navigation of Route planned with RouteInformationMode=FirstIncrement.
  • Guidance instructions and maneuver icon displayed too early after the route has been refreshed.

General

Breaking changes:

  • Enable RSA with OAEP encryption.

New features:

  • Add optional charging parameters
  • Extend DefaultVehicleProvider to support optional charging parameters.

Updates:

  • Initialize vehicle snapshot through DefaultVehicleProvider constructor.
  • Promot an Experimental Telemetry API to Public Preview.

Removals:

  • Retire Navigation Visualization Addon

Fixes:

  • Inconsistent use of function names.
  • Incorrect bottom padding on the map.
  • Minor DefaultVehicleProvider improvements
  • UpdateVehicleState should properly handle updates that lead to inconsistent state of the vehicle.

version 0.22.4 - 06/06/2023

Map

New features:

  • Add IC, JCT and traffic light icon for Japan map.
  • Add Routing Visualization to maps-demo-app
  • Create NavigationVisualization module within Maps
  • Intersection name and traffic light icon visualization.
  • Intersection name visualization for Japan map.

Updates:

  • Add instruction length calculation for Routing API v2
  • Load Orbis specific copyrights when Orbis feature is enabled.
  • Migrate vehicle restriction to travelModeProfile

Fixes:

  • Fixed table presentation for vehicle restriction page on dev portal.
  • Make current location marker grey if location is not updated for a some time.
  • Revert addon API to Public Preview

Search

New features:

  • Support for custom POI search with online-only search mode.

Routing

Fixes:

  • Hotfix an issue with route sections.

Breaking changes:

  • Remove LocationContextProviderEngines' language parameter, locale will be used from snapshot
  • Remove LocationProvider from the NavigationEngineRegistry and expose it on the TomTomNavigation interface as the mutable property: TomTomNavigation.locationProvider.
  • Reverse order of the parameters in HorizonSnapshot.distanceTo method.

New features:

  • Expose vehicle provider in TomTomNavigation
  • Extend Route Replanning to compute instructions incrementally on the active route as required.
  • Next waypoint can be manually marked as visited after it has been reached.

Updates:

  • Improve inline documentation for navigation horizon module.
  • Remove sticking to route on deviation
  • Add platform-specific attributes to the bindings.

Fixes:

  • Fix progress calculation on the overlapping route.
  • Improve synchronization in NavigationEngineRegistry.
  • Prevent repeated calls to RouteReplanner.incrementRouteContents when route length changes.

General

New features:

  • Remove RouteProjection feature toggle.

Updates:

  • Add performance test for orbis map and vehicle restrictions map.
  • Unclear methods explanations.

Fixes:

  • Incorrect bottom padding on the map.
  • Replaced keys with placeholders.

version 0.18.4 - 02/06/2023

version 0.18.0 - 22/05/2023

Map

Updates:

  • Update vehicle restrictions documentation with LEZ, hazmat, and supported restriction types.

Fixes:

  • Fix the issue of sprites not being displayed for custom styles that contain URL encoded characters
  • Make current location marker grey if location is not updated for a some time.

Search

Fixes:

  • Use time zone correctly in opening hours

Routing

Updates:

  • Adjust projection lower boundary.

Fixes:

  • Add remaining charging plug types mapping.
  • Hotfix an issue with route sections.
  • Move RouteIncrementResult to onboard infrastructure package
  • Setting internalAnnouncementPoints to none in case of the long-distance EV route.

Breaking changes:

  • Change id property type in com.tomtom.sdk.navigation.horizon.datasource.SafetyLocationData from string to SafetyLocationId inline class.
  • Change safetyLocationId property type in com.tomtom.sdk.navigation.horizon.elements.SafetyLocation from string to SafetyLocationId inline class.
  • Omit needless vehicle prefix for VehicleUpdateOption cases

New features:

  • Add bindings for get-pruned-pectangles method.
  • Add hybrid VH engine.
  • Add utility function of getting geometry of an element in a horizon snapshot.
  • Propagate guidance progress from instruction engine

Updates:

  • Remove sticking to route on deviation
  • Use limited parallelism in navigation.

Fixes:

  • Fix checking if the route can be replanned if the number of different points is the same as provided threshold in the RouteReplannerConfiguration.
  • Prevent repeated calls to RouteReplanner.incrementRouteContents when route length changes.

General

Breaking changes:

  • Change the api of DefaultVehicleProvider’s setVehicle method

Fixes:

  • Fix links on the FAQs page.

version 0.12.0 - 26/04/2023

Map

Breaking changes:

  • Remove LaneLevelSegmentController class.
  • Remove primitive accessors(markers, circles, polygons, polygonOverlays, polylines) from TomTomMap class.

New features:

  • Add support for ADR & Hazmat for vehicle restrictions.
  • Create Routing Visualization module within Maps
  • Enables adding and removing request observers for diagnostic information in httphandler.
  • Extend Polyline with pattern texture support.
  • Manual Map Management at update region set level.
  • Introduce a hybrid data provider

Updates:

  • Allow to pass null value to LocationController.setLocationProvider().
  • Add handling of invalid URL and mapping file as a result error.
  • Add missing NotoSans fonts.
  • Add more debug information to route validation error.
  • Add padding parameter to zoomToMarkers() method of MarkerController interface.
  • Add the possibility of drawing the route section based on the geometry and route offset.
  • Align the style across all the offline styles
  • Extend layer API with layer visibility
  • Promote MapOptions, MapView and MapFragment to general availability.
  • Promote TomTomMap class to general availability.
  • Update documentation of the com.tomtom.sdk.map.display.styleprovider.offline.StyleUriProvider to be used only with the offline map.
  • Update style version to 24.1.* and add dark mode support to vehicle restriction style.

Fixes:

  • Fix crash when traffic incident is tapped.
  • Avoid Opt-in for experimental feature in addons
  • Enable generation of documentation for StyleUriProvider
  • Fix crash when switching between map fragments using offline mode
  • Fix metadata handling on custom styles.
  • Get unknown icon category back.
  • Update the link text to indicate that the list of supported languages is for online maps
  • Add a Kdoc for setLanguage fun of MapController
  • Update the documentation for tomtom map config to specify how the contract for factory

Search

Breaking changes:

  • ChargingConnectorAvailabilityDetails is renamed to ConnectorAvailabilityDetails
  • ChargingAvailabilityId is renamed to availabilityId in EvChargingAvailabilityOptions
  • ConnectorType is renamed to type in ConnectorAvailability
  • ConnectorTypeSet is renamed to connectors in EvChargingAvailabilityOptions
  • EvChargingStationSearch is renamed to requestEVChargingAvailability in EvChargingAvailabilityProvider
  • Redesign AutocompleteSegment.
  • Remove timeout from HybridReverseGeocoder, OnlineReverseGeocoder, and HybridSearch.

New features:

  • Expose the provided fuel types in gas station POIs for offline search
  • FuelPriceResponse now has fuelPriceId
  • ParkingAvailabilityResponse now has parkingDetailId
  • Provide accessible vehicle types for POIs in offline search
  • Introduce accessibility of different types of vehicles at the Point of Interest.

Updates:

  • Remove unused types
  • Add tests for geobias when geometry search is used.
  • Use limited parallelism in search.

Fixes:

  • Add Locale to the constructor of SearchOptions for search along route scenario
  • Return empty sets of phones and URLs when non are provided in the online response.
  • Rely on the default view of online search instead of explicitly passing unified as geopolitical view.
  • Support deserialization of charging park without any connector detail.
  • When there are multiple search areas, utilize the first search area for offline search.

Routing

Breaking changes:

  • Ignore unsupported computeBestOrder for EV routing request
  • Ignore unsupported vehicleModelId for non-EV routing request
  • Prepare api for other range boundary types
  • Remove ConsumptionModel interface
  • Remove RangeCalculationOptions from RangeCalculationFailure and RangeCalculationResult to align with route planning
  • Remove coordinate precision
  • RouteIncrementResult is removed from public API
  • IncrementRouteResult renamed to advanceGuidanceProgress in RoutePlanner

New features:

  • Low emission zone avoidance option added for the onboard client
  • Low emission zone avoidance option added for the online client
  • Low emission zone section added for the online client
  • OnlineRoutePlanner charging parameters support.

Updates:

  • Extend short lane sections from online routing to display lane guidance sooner.

Fixes:

  • Always use non-scientific notation for floating-point parameters in request url
  • Do not add vehicleModelId-specific parameters to route/range request
  • Ensure that offset of arrival instruction does not exceed route length.
  • Filter out lane sections which have empty lane list.
  • Fixed onboard VehicleRestrictedSections

Breaking changes:

  • Change Horizon Engine API
  • Change update vehicle profile api in binding
  • Modify the restriction API to use types from Vehicle.
  • Move TollgatePaymentType from package com.tomtom.sdk.routing.route.instruction.common to com.tomtom.sdk.routing.route.
  • Refactor
  • Remove message and messagePhonetics parameters from GuidanceAnnouncement.
  • Rename ContinuousReplanningMode to BetterProposalAcceptanceMode
  • Rename GuidanceUpdateListener to GuidanceUpdatedListener.
  • Rename RouteUpdateReason.Unreachable tp RouteUpdateReason.Blockage and RouteReplanningReason.Unreachable to RouteReplanningReason.Blockage.
  • Rename TomTomNavigation.addGuidanceUpdateListener method to TomTomNavigation.addGuidanceUpdatedListener.
  • Rename TomTomNavigation.removeGuidanceUpdateListener method to TomTomNavigation.removeGuidanceUpdatedListener.
  • Restructure the LocationContext class to contain the Address and Road classes.
  • Rework locations in hazard.

New features:

  • Add NdsStoreAccessPermit as a way to specify either the map license or keystore password and add it to NdsStoreConfiguration.
  • Add option to RoutePlanningOptions for controlling instruction computation mode
  • Add support for Finnish and Mexican Spanish in spoken messages.
  • Add support for better route proposals of out-of-range EV routes.
  • Add support for hazard warning in vehicle horizon.
  • Create hazard models in horizon data source module.
  • Enable vehicle profile update
  • Ignore instructions when validating/merging route on route refresh
  • Implement the vehicle and dangerous goods restriction elements.
  • Improve NavigationTileStore configuration API.
  • Introduce data store switch logic.
  • Route replanning during navigation uses the most up-to-date vehicle profile information available.
  • Truck restriction tests
  • When leaving the charging stop with insufficient charge, GoSDK issues a route replan.
  • Vehicle and dangerous goods restriction API

Updates:

  • Add documentation about DangerousGoodsRestriction and VehicleRestriction.
  • Add factory methods for creating a hybrid navigation.
  • Add missing public preview notes in com.tomtom.sdk.navigation.horizon.* packages.
  • Allow only one data source for a given Virtual Horizon’s data type.
  • Configure navigation api path based on Orbis feature toggle state.
  • Fix the default maximum main path searching distance to 2km.
  • Make DetailedHazardInformation subclasses as data classes.
  • Replace TomTom logo in the notification for navigation service.
  • Reset maxAlternative option to zero in case of deviation route re-planing for Primary route.
  • Restore validation of navigation start not being called twice.
  • Retry plan route request for continuous re-planing with maxAlternatives set to 0 in case inner routing computation timeout error.
  • Trigger navigation tile store updates in hybrid mode.

Fixes:

  • Improve lane guidance view scaling.
  • Avoid mixing online and offline projected route segments in hybrid navigation.
  • Back to route accounts for supporting points.
  • Better handling of larger font in ETA panel.
  • Change margins of eta panel
  • Check map access before reverse geocoding
  • Chevron animation is not moving smoothly during map updates.
  • Do not hide street view when a destination is reached.
  • Do not show route updated notification if the route is not changed.
  • Ensure that we have properly initialized engines no matter if map is changed or not.
  • Filter out lane sections which have empty lane list.
  • Fix MissingResourceException when generating verbal message.
  • Fix TestProgressUpdatedListener.
  • Fix crash caused by non-matching RouteLeg’s geometry and Section’s geometry after route refresh.
  • Fix distance units in notifications.
  • Fix division by zero in the route progress engine.
  • Fix fix format of ETA.
  • Fix fonts for navigation elements
  • Fix lowEmissionZoneSections routeOffset calculation
  • Fix predictions initialisation.
  • Fix typo in style name.
  • Fixes documentation for navigationProcessingThrottle parameter.
  • Navigating with a waypoint result in the chevron not moving.
  • Offroad positions for updating horizon
  • Require last instruction for arrival detection
  • The LocationProvider is no longer closed inside the NavigationEngineRegistry.updateEngines method, it has to be handled by the user of the SDK.
  • OnDestinationReached may crash if there are no Instructions.

Location

Updates:

  • Catch IOExceptions inside the DirectoryLoggerStrategy and throw IllegalStateException when the file creation fails.

Fixes:

  • Fix location traces recorder using documents tree directory.
  • Fix recorded TTP logs header.
  • Remove bin file extension from the TTP file if the file is represented as RawDocumentFile.

General

Breaking changes:

  • Rename artifact

New features:

  • Add DefaultVehicleProvider support for vehicle model id.
  • Add full form overloads for quantity functions using abbreviated units in their names
  • NavVis Addon: Implement support for showing pattern textures on traffic lines
  • NavVis Addon: Implement traffic lines transition from solid color to pattern on zoom level changes
  • NavVisAddon: Enable speed cameras and add danger zones
  • VehicleProvider charging parameters support.

Updates:

  • Add use cases for VehicleProvider to documentation.
  • Fix comment block formatting.
  • Highlight that navigation fetches vehicle’s data from VehicleProvider during navigation.
  • Improve logging for Vehicle SDK and UI.
  • Make vehicle-client-api documentation visible to the customers.
  • Remove ExperimentalTrafficApi annotation and move experimental part of the traffic API to public preview.
  • Update offline map documentation.
  • Vehicle SDK docs are visible on developer portal.

Fixes:

  • Improve retrying http mechanism
  • Remove unnecessary public functions from Vehicle SDK.

version 0.3.1617 - 10/02/2023

Map

Breaking changes:

  • Remove ResourceCache configuration from MapOptions.
  • Remove duration filter from OnlineCachePolicy.

New features:

  • Add traffic support for Onboard-style-provider
  • Enable fetching of onboard hill shading tiles.
  • Map region language configuration

Updates:

  • Promote OrbisMapFeature from @InternalTomTomSdkApi to @ExperimentalMapFeature.
  • Promote SmoothStyleReloadFeature from @InternalTomTomSdkApi to @ExperimentalMapFeature.
  • Updated style version to 24.0.x

Search

Breaking changes:

  • Move entryPoints from Poi to Place.
  • Remove FuelName and extend FuelType to replace it.
  • Remove navigablePosition from reversegeocoder’s PlaceMatch and replace it with entryPoints in Place.
  • Implement custom base URL for reverse geocoder.
  • Rename ReverseGeocoder.EntityType to AreaType.

Routing

Updates:

  • Promoting route planners API to general availability.
  • Publish new guide on importing, exporting and modifying routes.

Breaking changes:

  • Change the HybridRouteReplanner.create method to accept only RoutePlanners for online and offline.
  • Remove DefaultRouteReplanner and com.tomtom.sdk.navigation:route-replanner-default dependency.
  • Remove the method from OfflineRouteReplannerFactory that created the RoutePlanner internally.
  • Remove the method from OnlineRouteReplannerFactory that created the RoutePlanner internally.
  • Rename OnVehicleUpdateListener to VehicleUpdatedListener.

New features:

  • Calculate arc’s route offsets and add support for the partial route window.
  • Extend createOfflineNavigation method with RoutePlanner parameter.
  • Extension functions to the TomTomNavigationFactory for simpler initialization of the TomTomNavigation in the offline mode.
  • Extension functions to the TomTomNavigationFactory for simpler initialization of the TomTomNavigation in the online mode.
  • Introduce OfflineRouteReplannerFactory to initialize the RouteReplanner used for offline navigation.
  • Introduce OnlineRouteReplannerFactory to initialize the RouteReplanner used for online navigation.

Updates:

  • Move ArrivalDetectionEngine interface to navigation-engines module.
  • Move GuidanceEngine interface to navigation-engines module.
  • Move HorizonEngine interface to navigation-engines module.
  • Move LocationContextProviderEngine interface to navigation-engines module.
  • Move RouteProgressEngine interface to navigation-engines module.
  • Move RouteProjectionEngine interface to navigation-engines module.
  • Move RouteReplanningEngine interface to navigation-engines module.
  • Move RouteTrackingEngine interface to navigation-engines module.
  • Update navigation initialization documentation to use the new TomTomFactory methods.

Fixes:

  • Fix navigation crash on the location updates start.
  • Instruction offsets are updated after replan.

General

Breaking changes:

  • Remove copy function from Quantities

Updates:

  • Add runtime validation of API parameters value
  • Simplify Quantity library

version 0.3.1547 - 03/02/2023

Map

Updates:

  • Add tpeg traffic case to maps demo app.
  • Promote Rendered Features to general availability including geojson package.
  • Promote com.tomtom.sdk.map.display.location.* to general availability.
  • Promote com.tomtom.sdk.map.display.route.* to general availability.
  • Promote com.tomtom.sdk.map.display.style.* to general availability.

Search

Fixes:

  • Support localization in reverse geocoder based on only language for online search unsupported ietf languages tags.

Routing

Updates:

  • Promote Route API to general availability.
  • Promoting RoutingFailure to general availability.

Breaking changes:

  • Add navigation-engines module and move map-matching-engine there
  • Make quantizedTurnAngle parameter not nullable in RoundaboutInstruction and ExitRoundaboutInstruction.
  • Remove RoundaboutDirection from RoundaboutInstruction and ExitRoundaboutInstruction.

New features:

  • Implement API for manual announcements.

Fixes:

  • Fix offline navigation use case tutorial app crash due to closed LocationProvider.

General

Breaking changes:

  • Convert various structures to use Quantities

version 0.3.1522 - 30/01/2023

Map

Updates:

  • Promote com.tomtom.sdk.map.display.map.* to general availability.
  • Thrown IllegalArgumentException when provided layer mapping isn’t correct.

Fixes:

  • Fix crash when starting map with Satellite style.

Search

Breaking changes:

  • A new class, PoiDetails, is now returned from the requestPoiDetails API instead of SearchResult. The new class only has the data relevant to the POI.
  • Remove offset and add default values for other fields in SearchRequestSummary.

Fixes:

  • Parse the speed limit for reverse geocoder correctly.

Routing

Breaking changes:

  • Removing inheritance of

Fixes:

  • Add a property for requesting path alternatives.
  • Make vehicle load a value class and change it to UN hazmat.
  • Mark path alternative routes as such in Routing SDK.
  • Remove EngineType from public API.

New features:

  • Introduce traces-logger module for recording and parsing location traces (TTP format).

General

Breaking changes:

  • Rename Probability Quantity to Ratio.

Updates:

  • Promote com.tomtom.quantity.* to general availability.

version 0.3.1486 - 24/01/2023

Map

New features:

  • Add an example app to map demo app for hill shading support in onboard mode.
  • Add in memory caching for offline data provider.
  • Add support for hill shade tiles in offline data provider.
  • Extend RouteOptions with fields to customize the departure and destination markers.
  • Traffic data provider implementation.

Updates:

  • Specify OpenGLES3.0 is specified minimum requirement.
  • Improve rotation inertia calculation, in general, rotation inertia should be more substantial.
  • Mark all public API in gesture-detectors module as @InternalTomTomSdkApi.
  • Promote com.tomtom.sdk.map.display.camera.* to general availability.
  • Promote com.tomtom.sdk.map.display.circle.* to general availability.
  • Promote com.tomtom.sdk.map.display.copyright.* to general availability.
  • Promote com.tomtom.sdk.map.display.gesture.* to general availability.
  • Promote com.tomtom.sdk.map.display.image.* to general availability.
  • Promote com.tomtom.sdk.map.display.marker.* to general availability.
  • Promote com.tomtom.sdk.map.display.polyline.* to general availability.
  • Promote com.tomtom.sdk.map.display.traffic.* to general availability.
  • Promote com.tomtom.sdk.map.display.ui.* to general availability apart from MapView.
  • Remove unnecessary PP notices from internal apis.
  • Suppress feature toggle types due to being internal use only.

Fixes:

  • Fix move gesture inertia sensitivity, now it is smaller especially on devices with low dpi.
  • Fix of quick scale gesture, now scaling is linear.

Search

Breaking changes:

  • Use Quantity.Speed to represent speed limit in PlaceMatch in the reverse geocoder instead of a plain string.
  • Remove mapcode from reverse geocoder.
  • Renames, inputQuery to query, category to poiCategory, SortBy to SortOrder, SearchRequestSummary to SearchSummary. Remove numResults from all Summary classes. Remove AddressRanges. Enhance the documentation for countryCode in Address.kt to mention that it is an ISO two-letter code.

Routing

Breaking changes:

  • Add validation for tollgateName and paymentTypes in TollgateInstruction to ensure at least one value is specified.

New features:

  • Expose the online planning reason with the route summary.

Breaking changes:

  • Add validation in BorderCrossing to ensure that from and to countries are not same.
  • Remove travelTime property from Instruction.
  • Remove values keepLeft and keepRight from TurnDirection.
  • Rename ItineraryPointSide to ItineraryPointRelativePosition.
  • Replace RoutePoint with InstructionPoint in Instruction.routePath.
  • TurnDirection backing values has been changed.

New features:

  • Add projected route offsets and refactor and simplify logic in route projection engine.
  • Expose country information element in Horizon Engine.
  • Navigation snapshot contains vehicle data from Vehicle SDK.
  • Speak intersection name for audio instruction.

Updates:

  • Add ItineraryPointRelativePosition.Ahead value.
  • Add validation for tollgateName and paymentTypes in GuidanceTollgateInstruction to ensure at least one value is specified.
  • Introduce LocationReference marker interface for DataObject.

Fixes:

  • Fix navigation use case tutorial app crash due to closed LocationProvider.

General

Breaking changes:

  • Change UnitBase from interface to abstract class and change the visibility to internal for name and factor properties.
  • Rename Distance.Zero to .ZERO, add ZERO members for other Quantities.
  • Remove quantity.Duration, Probability.InWholeUnitRange and Angle.InWholeRadians.

New features:

  • NavVis Addon: Implement stylization API for the departure and destination markers.

Updates:

  • Add documentation for quantity objects.

Removals:

  • Remove toDouble(unit: Unit) and toLong(unit:Unit) from com.tomtom.quantity.Quantity.
  • Remove troy ounces unit and related method from com.tomtom.quantity.Weight.

Fixes:

  • Fix typo in com.tomtom.quantity.Force.Unit from KilowattHoursPerKilometers to KilowattHoursPerKilometer.
  • Fix typo in com.tomtom.quantity.FuelPerTime.Unit from MillimetersPerHour to MillilitersPerHour.
  • Fix typo for milliliters abbreviation in com.tomtom.quantity.FuelConsumption, com.tomtom.quantity.FuelPerTime and com.tomtom.quantity.Volume.

version 0.3.1427 - 16/01/2023

Map

New features:

  • Add field of view to initializer of CameraOptions.

Search

Breaking changes:

  • Change the type of geometry from GeoGemetry to Geometry from the geojson package in PlaceMatch.kt
  • Rename class Summary in reverse geocoder to ReverseGeocoderSummary.
  • Rename parameter reverseGeocoderOptions in the reverseGeocode API to options.
  • Rename parameter reverseGeocoderCallback in the reverseGeocode API to callback.
  • Use GeoPoliticalView for representing geopolitical view in ReverseGeocoderOptions instead of a string.

New features:

  • Use quantity library for representing an angle in reverse geocoding options.

Fixes:

  • Do not request for addresses when a poi-specific.
  • Fix documentation for search to use @property tag for properties.

Routing

Breaking changes:

Rename routing errors to routing failures.

Updates:

  • Promote routing options API to general availability.

Fixes:

  • Fix routing with coordinates close to 0.0

Breaking changes:

  • Rename CountryInfo to Country.
  • Rename RoadInformation to Road.

Fixes:

  • Handle route re-planning in the RouteProjectionEngine.

version 0.3.1389 - 09/01/2023

Map

Breaking changes:

  • Change MapController.visibleRegion property to a method.
  • Remodel InvalidPointException to PointConversionFailure.
  • Remodel InvalidRegionException to RegionCalculationFailure.
  • Сonvert CompassButton.VisibilityPolicy to the "value class".
  • Сonvert CurrentLocationButton.VisibilityPolicy to the "value class".
  • Сonvert LaneBoundary.Type to the "value class".
  • Сonvert LogoView.VisibilityPolicy to the "value class".
  • Сonvert RadiusUnit to the "value class".
  • Сonvert TextAnchoring to the "value class".
  • Сonvert WidthUnit to the "value class".
  • Rename com.tomtom.sdk.map.gesture.OnScaleGestureListener → com.tomtom.sdk.map.gesture.ScaleGestureListener
  • Rename com.tomtom.sdk.map.gesture.OnDoubleTapListener → com.tomtom.sdk.map.gesture.DoubleTapListener
  • Rename com.tomtom.sdk.map.display.ui.currentlocation.CurrentLocationButton.removeOnCurrentLocationButtonClickListener() → com.tomtom.sdk.map.display.ui.currentlocation.CurrentLocationButton.removeCurrentLocationButtonClickListener()
  • Rename com.tomtom.sdk.map.display.ui.currentlocation.CurrentLocationButton.addOnCurrentLocationButtonClickListener() → com.tomtom.sdk.map.display.ui.currentlocation.CurrentLocationButton.addCurrentLocationButtonClickListener()
  • Rename com.tomtom.sdk.map.display.ui.compass.CompassButton.removeOnCompassButtonClickListener() → com.tomtom.sdk.map.display.ui.compass.CompassButton.removeCompassButtonClickListener()
  • Rename com.tomtom.sdk.map.display.ui.compass.CompassButton.addOnCompassButtonClickListener() → com.tomtom.sdk.map.display.ui.compass.CompassButton.addCompassButtonClickListener()
  • Rename com.tomtom.sdk.map.display.ui.OnUiComponentClickListener → com.tomtom.sdk.map.display.ui.UiComponentClickListener
  • Rename com.tomtom.sdk.map.display.ui.OnMapReadyCallback → com.tomtom.sdk.map.display.ui.MapReadyCallback
  • Rename com.tomtom.sdk.map.display.traffic.TrafficController.removeOnTrafficIncidentClickListener() → com.tomtom.sdk.map.display.traffic.TrafficController.removeTrafficIncidentClickListener()
  • Rename com.tomtom.sdk.map.display.traffic.TrafficController.addOnTrafficIncidentClickListener() → com.tomtom.sdk.map.display.traffic.TrafficController.addTrafficIncidentClickListener()
  • Rename com.tomtom.sdk.map.display.traffic.OnTrafficIncidentClickListener → com.tomtom.sdk.map.display.traffic.TrafficIncidentClickListener
  • Rename com.tomtom.sdk.map.display.route.RouteController.removeOnRouteClickListener() → com.tomtom.sdk.map.display.route.RouteController.removeRouteClickListener()
  • Rename com.tomtom.sdk.map.display.route.RouteController.addOnRouteClickListener() → com.tomtom.sdk.map.display.route.RouteController.addRouteClickListener()
  • Rename com.tomtom.sdk.map.display.route.OnRouteClickListener → com.tomtom.sdk.map.display.route.RouteClickListener
  • Rename com.tomtom.sdk.map.display.polyline.PolylineController.removeOnPolylineClickListener → com.tomtom.sdk.map.display.polyline.PolylineController.removePolylineClickListener
  • Rename com.tomtom.sdk.map.display.polyline.PolylineController.addOnPolylineClickListener → com.tomtom.sdk.map.display.polyline.PolylineController.addPolylineClickListener
  • Rename com.tomtom.sdk.map.display.polyline.OnPolylineClickListener → com.tomtom.sdk.map.display.polyline.PolylineClickListener
  • Rename com.tomtom.sdk.map.display.polygon.PolygonController.removeOnPolygonClickListener → com.tomtom.sdk.map.display.polygon.PolygonController.removePolygonClickListener
  • Rename com.tomtom.sdk.map.display.polygon.PolygonController.addOnPolygonClickListener → com.tomtom.sdk.map.display.polygon.PolygonController.addPolygonClickListener
  • Rename com.tomtom.sdk.map.display.polygon.OnPolygonClickListener → com.tomtom.sdk.map.display.polygon.PolygonClickListener
  • Rename com.tomtom.sdk.map.display.location.LocationController.removeOnLocationMarkerClickListener → com.tomtom.sdk.map.display.location.LocationController.removeLocationMarkerClickListener
  • Rename com.tomtom.sdk.map.display.location.LocationController.addOnLocationMarkerClickListener → com.tomtom.sdk.map.display.location.LocationController.addLocationMarkerClickListener
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.removeOnMapPanningListener() → com.tomtom.sdk.map.display.gesture.GesturesController.removeMapPanningListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.addOnMapPanningListener() → com.tomtom.sdk.map.display.gesture.GesturesController.addMapPanningListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.removeOnMapLongClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.removeMapLongClickListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.addOnMapLongClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.addMapLongClickListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.removeOnMapDoubleClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.removeMapDoubleClickListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.addOnMapDoubleClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.addMapDoubleClickListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.removeOnMapClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.removeMapClickListener()
  • Rename com.tomtom.sdk.map.display.gesture.GesturesController.addOnMapClickListener() → com.tomtom.sdk.map.display.gesture.GesturesController.addMapClickListener()
  • Rename com.tomtom.sdk.map.display.camera.CameraController.removeOnCameraSteadyListener() → com.tomtom.sdk.map.display.camera.CameraController.removeCameraSteadyListener()
  • Rename com.tomtom.sdk.map.display.camera.CameraController.addOnCameraSteadyListener() → com.tomtom.sdk.map.display.camera.CameraController.addCameraSteadyListener()
  • Rename com.tomtom.sdk.map.display.camera.CameraController.removeOnCameraChangeListener() → com.tomtom.sdk.map.display.camera.CameraController.removeCameraChangeListener()
  • Rename com.tomtom.sdk.map.display.camera.CameraController.addOnCameraChangeListener() → com.tomtom.sdk.map.display.camera.CameraController.addCameraChangeListener()
  • Rename com.tomtom.sdk.map.display.circle.removeOnCircleClickListener() → com.tomtom.sdk.map.display.circle.removeCircleClickListener()
  • Rename com.tomtom.sdk.map.display.circle.addOnCircleClickListener() → com.tomtom.sdk.map.display.circle.addCircleClickListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.removeOnMarkerSelectedListener() → com.tomtom.sdk.map.display.marker.MarkerController.removeMarkerSelectionListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.addOnMarkerSelectedListener() → com.tomtom.sdk.map.display.marker.MarkerController.addMarkerSelectionListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.removeOnMarkerLongClickListener() → com.tomtom.sdk.map.display.marker.MarkerController.removeMarkerLongClickListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.addOnMarkerLongClickListener() → com.tomtom.sdk.map.display.marker.MarkerController.addMarkerLongClickListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.removeOnMarkerClickListener() → com.tomtom.sdk.map.display.marker.MarkerController.removeMarkerClickListener()
  • Rename com.tomtom.sdk.map.display.marker.MarkerController.addOnMarkerClickListener() → com.tomtom.sdk.map.display.marker.MarkerController.addMarkerClickListener()
  • Rename com.tomtom.sdk.map.display.marker.OnMarkerSelectedListener → com.tomtom.sdk.map.display.marker.MarkerSelectionListener
  • Rename com.tomtom.sdk.map.display.marker.OnMarkerLongClickListener → com.tomtom.sdk.map.display.marker.MarkerLongClickListener
  • Rename com.tomtom.sdk.map.display.marker.OnMarkerClickListener → com.tomtom.sdk.map.display.marker.MarkerClickListener
  • Rename com.tomtom.sdk.map.display.location.OnLocationMarkerClickListener → com.tomtom.sdk.map.display.location.LocationMarkerClickListener
  • Rename com.tomtom.sdk.map.display.gesture.OnMapPanningListener → com.tomtom.sdk.map.display.gesture.MapPanningListener
  • Rename com.tomtom.sdk.map.display.gesture.OnMapLongClickListener → com.tomtom.sdk.map.display.gesture.MapLongClickListener
  • Rename com.tomtom.sdk.map.display.gesture.OnMapDoubleClickListener → com.tomtom.sdk.map.display.gesture.MapDoubleClickListener
  • Rename com.tomtom.sdk.map.display.gesture.OnMapClickListener → com.tomtom.sdk.map.display.gesture.MapClickListener
  • Rename com.tomtom.sdk.map.display.copyright.OnCopyrightsFetchedCallback → com.tomtom.sdk.map.display.copyright.CopyrightsFetchingCallback
  • Rename com.tomtom.sdk.map.display.common.OnCancellableActionCallback → com.tomtom.sdk.map.display.camera.AnimateCameraCallback
  • Rename com.tomtom.sdk.map.display.circle.OnCircleClickListener → com.tomtom.sdk.map.display.circle.CircleClickListener
  • Rename com.tomtom.sdk.map.display.camera.OnCameraChangeListener → com.tomtom.sdk.map.display.camera.CameraChangeListener
  • Rename com.tomtom.sdk.map.display.camera.OnCameraSteadyListener → com.tomtom.sdk.map.display.camera.CameraSteadyListener
  • Rename com.tomtom.sdk.map.display.style.OnStyleLoadedCallback → com.tomtom.sdk.map.display.style.StyleLoadingCallback

New features:

  • Enable map display componentization by default and remove the map display componentization toggle and deprecated interfaces.
  • Add API to provide route sections using RouteOptions.

Search

Breaking changes:

  • Make reverse geocoder use locale instead of IETF language code.
  • Removed unneeded runtime features from search.
  • Use default locale in search APIs.

Updates:

  • Make DEFAULT_RADIUS public in ReverseGeocoderOptions.

Routing

Breaking changes:

  • Remove unused languageCode from RoadShield.
  • Rename RoutePlanningResult to RoutePlanningResponse.
  • Replace java.net.URL with android.net.Uri.
  • Use Locale for language in PhoneticString and TextWithPhonetic.
  • Use Locale for language in Phonetics.

Updates:

  • Promote sections API to general availability.

Breaking changes:

  • Remove GuidanceInstruction.travelTime.
  • Rename NavigationError to NavigationFailure and convert to an abstract class.
  • Rename NavigationStartError to NavigationFailure.NavigationStartFailure.
  • Rename OnDestinationReachedListener to DestinationReachedListener.
  • Rename OnGuidanceUpdateListener to GuidanceUpdateListener.
  • Rename OnGuidanceViewBoundariesChangeListener to GuidanceViewBoundariesChangeListener.
  • Rename OnHorizonUpdatedListener to HorizonUpdatedListener.
  • Rename OnLaneGuidanceUpdateListener to LaneGuidanceUpdatedListener.
  • Rename OnLanguageChangedListener to LanguageChangedListener.
  • Rename OnLocationContextUpdateListener to LocationContextUpdatedListener.
  • Rename OnLocationMapMatchedListener to LocationMapMatchedListener.
  • Rename OnNavigationErrorListener to NavigationFailureListener.
  • Rename OnNavigationStartedListener to NavigationStartedListener.
  • Rename OnProgressUpdateListener to ProgressUpdatedListener.
  • Rename OnReplannedRouteProposedListener to ReplannedRouteProposedListener.
  • Rename OnRouteDeviationListener to RouteDeviationListener.
  • Rename OnRouteUpdatedListener to RouteUpdatedListener.
  • Rename OnRoutesChangedListener to RoutesChangedListener.
  • Rename OnWaypointVisitedListener to WaypointVisitedListener.
  • Rename RouteDeviationListener.onRouteDeviated to RouteDeviationListener.onRouteDeviation.
  • Rename RouteUpdateError to NavigationFailure.RouteUpdateError.
  • Rename TomTomNavigation.addOnDestinationReachedListener to TomTomNavigation.addDestinationReachedListener and TomTomNavigation.removeOnDestinationReachedListener to TomTomNavigation.removeDestinationReachedListener.
  • Rename TomTomNavigation.addOnGuidanceUpdateListener to TomTomNavigation.addGuidanceUpdateListener and TomTomNavigation.removeOnGuidanceUpdateListener to TomTomNavigation.removeGuidanceUpdateListener.
  • Rename TomTomNavigation.addOnHorizonUpdateListener to TomTomNavigation.addHorizonUpdatedListener and TomTomNavigation.removeOnHorizonUpdateListener to TomTomNavigation.removeHorizonUpdatedListener.
  • Rename TomTomNavigation.addOnLaneGuidanceUpdatedListener to TomTomNavigation.addLaneGuidanceUpdatedListener and TomTomNavigation.removeOnLaneGuidanceUpdatedListener to TomTomNavigation.removeLaneGuidanceUpdatedListener.
  • Rename TomTomNavigation.addOnLanguageChangedListener to TomTomNavigation.addLanguageChangedListener and TomTomNavigation.removeOnLanguageChangedListener to TomTomNavigation.removeLanguageChangedListener.
  • Rename TomTomNavigation.addOnLocationContextUpdateListener to TomTomNavigation.addLocationContextUpdatedListener and TomTomNavigation.removeOnLocationContextUpdateListener to TomTomNavigation.removeLocationContextUpdatedListener.
  • Rename TomTomNavigation.addOnLocationMapMatchedListener to TomTomNavigation.addLocationMapMatchedListener and TomTomNavigation.removeOnLocationMapMatchedListener to TomTomNavigation.removeLocationMapMatchedListener.
  • Rename TomTomNavigation.addOnNavigationErrorListener to TomTomNavigation.addNavigationFailureListener and TomTomNavigation.removeOnNavigationErrorListener to TomTomNavigation.removeNavigationFailureListener.
  • Rename TomTomNavigation.addOnNavigationStartedListener to TomTomNavigation.addNavigationStartedListener and TomTomNavigation.removeOnNavigationStartedListener to TomTomNavigation.removeNavigationStartedListener.
  • Rename TomTomNavigation.addOnProgressUpdateListener to TomTomNavigation.addProgressUpdatedListener and TomTomNavigation.removeOnProgressUpdateListener to TomTomNavigation.removeProgressUpdatedListener.
  • Rename TomTomNavigation.addOnReplannedRouteProposedListener to TomTomNavigation.addReplannedRouteProposedListener and TomTomNavigation.removeOnReplannedRouteProposedListener to TomTomNavigation.removeReplannedRouteProposedListener.
  • Rename TomTomNavigation.addOnRouteDeviationListener to TomTomNavigation.addRouteDeviationListener and TomTomNavigation.removeOnRouteDeviationListener to TomTomNavigation.removeRouteDeviationListener.
  • Rename TomTomNavigation.addOnRouteUpdatedListener to TomTomNavigation.addRouteUpdatedListener and TomTomNavigation.removeOnRouteUpdatedListener to TomTomNavigation.removeRouteUpdatedListener.
  • Rename TomTomNavigation.addOnRoutesChangedListener to TomTomNavigation.addRoutesChangedListener and TomTomNavigation.removeOnRoutesChangedListener to TomTomNavigation.removeRoutesChangedListener.
  • Rename TomTomNavigation.addOnWaypointVisitedListener to TomTomNavigation.addWaypointVisitedListener and TomTomNavigation.removeOnWaypointVisitedListener to TomTomNavigation.removeWaypointVisitedListener.
  • Replace java.net.URL with android.net.Uri.

New features:

  • Provide a mechanism for a client to fetch TPEG traffic events and subscribe to the traffic updates.

Updates:

  • Update GuidanceEngineFactory docs.
  • Update navigation language API documentation.

Fixes:

  • Increase overlap length if route projection sections do not overlap.
  • Provide message with applied distance
  • Switch TPEG Traffic’s initSessionUri type from String to android.net.Uri.
  • Throw an exception after timeout in TestOnLocationContextUpdateListener.

General

Breaking changes:

  • Mark Either monad as internal api.
  • Rename com.tomtom.sdk.routing.common.options to com.tomtom.sdk.routing.options.
  • Rename com.tomtom.sdk.routing.common.range to com.tomtom.sdk.routing.range.
  • Move com.tomtom.sdk.routing.common.*Error to com.tomtom.sdk.routing.error.

Updates:

  • Promote class Either and all of its extension methods to General Availability.
  • Promote class NavigationHttpInterceptor to General Availability.
  • Promote class ResponseData to General Availability.
  • Promote class ViewBoundaries to General Availability.
  • Promote extension method View.viewBoundaries() to General Availability.
  • Promote interface RequestObserver to General Availability.

Fixes:

  • Fix default colors in Navigation visualization addon.

version 0.3.1307 - 23/12/2022

Map

Breaking changes:

  • Merge radius and radiusUnit into Radius object in CircleOptions and Circle.
  • Remodel style loading failure to a more robust type.
  • Rename RadiusUnit.PIXEL_DENSITY to RadiusUnit.DENSITY_PIXEL.
  • Rename diagnostic events from Errors to Failures.
  • Switch between Full Onboard or Full Online.

New features:

  • Implement Marker.setPinIconAnchor() and Marker.setShieldImage() methods.

Fixes:

  • Remove NotoSans fonts to reduce SDK size.
  • Remove the marker even when it is not selected.

Search

Breaking changes:

  • Remodel StructuredSearchError into a proper restricted class hierarchy.
  • Renaming SearchError and its subclasses to Failures.
  • Renaming StructuredSearchError and its subclasses to Failures.
  • Remove ReverseGeocoderError. Replace it with SearchError.
  • Remove classes related poi (RelatedPoi, RequestedPoiRelationType and PoiRelationType).
  • Replace enum with value class for EntityType and SpreadingMode.

Fixes:

  • Remove CustomPoiDataProviderFactory and ExperimentalFeedbackApi from documentation.

Routing

Breaking changes:

  • Convert CarpoolLaneDirection enum to value class.
  • Convert ForkDirection enum to value class.
  • Convert ItineraryPointSide enum to value class.

Updates:

  • Mark Itinerary as data class.

Breaking changes:

  • Introduce EngineRegistry for engines access and bulk update.
  • Introduce OnLocationMapMatchedListener and the following methods NavigationController.addOnLocationMapMatchedListener and NavigationController.removeOnLocationMapMatchedListener.
  • Remove OnLocationMatchedListener and following methods NavigationController.addOnLocationMatchedListener and NavigationController.removeOnLocationMatchedListener.
  • Remove OnLocationPredictionsGeneratedListener and following methods NavigationController.addOnLocationPredictionsGeneratedListener and NavigationController.removeOnLocationPredictionsGeneratedListener.
  • Rename TileCacheRouteProjectionOptions and OfflineRouteProjectionOptions to RouteProjectionOptions. Move RouteProjectionOptions to the navigation:navigation module.
  • Replaced NavigationController interface with TomTomNavigation and exposed it through TomTomNavigationFactory.
  • Restructure NavigationSnapshot class parameters.

Updates:

  • Handle obsolete map references in route.
  • Mark TomTomNavigationService public methods with Public Preview.

Fixes:

  • Fix progress calculation to not skip waypoints.
  • Update kdoc in GuidanceEngineOptions.
  • Use projected routes in offline mapmatching engine.

General

Breaking changes:

  • Rename com.tomtom.sdk.common.Callback::onError → com.tomtom.sdk.common.Callback::onFailure

New features:

  • Add Field of View to camera options.
  • Add missing from user flag check when progress of fov scrollbar is updated.

version 0.3.1250 - 16/12/2022

Map

Breaking changes:

  • Convert cameraTrackingMode and cameraPosition in from methods to properties.
  • Migrate from custom Color class to platform ColorInt.
  • Replace AnimationDuration with kotlin.time.Duration.
  • Change Marker.tag type from Any? to String?
  • Change TomTomMapFactory visibility to internal.

Updates:

  • Сonvert GestureType to the "value class", imports should be updated.
  • Сonvert CameraTrackingMode to the "value class", imports should be updated.
  • Add method to remove elements by tag to CircleController, MarkerController, PolygonController and PolylineController.

Search

Breaking changes:

  • OfflineUnsupportedError is removed.
  • Remove evChargingStationSearch from Search.kt and leave it in EvChargingAvailabilityProvider.kt
  • Replace AutocompleteSearchOption with AutocompleteOption, AutocompleteSearchResponse with AutocompleteResponse and AutocompleteSearchResponse with AutocompleteResponse.
  • Use com.tomtom.quantity.Distance for CircleGeometry and ReverseGeocoderOptions.

Updates:

  • Move EvChargingAvailabilityProvider from Experimental API to Public Preview.

Routing

Breaking changes:

  • Rename Route.routeCoordinates property to Route.routePoints.
  • Rename RouteCoordinate to RoutePoint.

Updates:

  • Mark ForkPoint as data class
  • Mark RouteIncrementResult as data class

Breaking changes:

  • Add language parameter to TaggedMessage.
  • Align RoadInformation with the iOS code
  • Change GuidanceEngine.availableLanguages type to List of Locales.
  • Make point property in Announcement required
  • Rename NavigationHistorySnapshot.visitedRouteCoordinates property to NavigationHistorySnapshot.visitedRoutePoints.
  • Rename TileCacheMapMatchingEngineFactory to TileStoreMapMatchingEngineFactory.
  • Rename TileCacheRouteProjectionEngineFactory to TileStoreRouteProjectionEngineFactory.
  • Rename TileCacheRouteProjectionEngineOptions to TileStoreRouteProjectionEngineOptions.
  • Add prefix to resources in navigation ui

New features:

  • Change TTS language in navigation UI when navigation language is changed.
  • Change of navigation language is reflected in guidance announcements.
  • Introduce OnLanguageChangedListener to signal change of navigation language.
  • Route replanning after language change

Updates:

  • Add phoneticAlphabet parameter to Phonetics.
  • Hide GeneralRoadElements.AdminRoadClassType internal value property.
  • Hide GeneralRoadElements.FormOfWayType internal value property.
  • Hide GeneralRoadElements.RoadConditionType internal value property.
  • Hide Poi.Type internal value property.
  • Hide SafetyLocation.Type internal value property.
  • Hide SpeedLimits.Type internal value property.

Fixes:

  • Add proper filtering of arc keys in the route window.
  • If the first locations are not on the navigated route the progress is calculated for the beginning of the route.
  • SpeedView visibility change does not cause flickering.

General

Breaking changes:

  • Convert enums to value classes or abstract classes in the Quantity package.
  • Move route to routing:model and Rename com/tomtom/sdk/route/ to com/tomtom/sdk/routing/route/
  • Pluralise the units in the Quantity package (e.g. METERMeters).
  • Remove toString from the Quantity class and replace it with format in the Quantity package.

New features:

  • Add Probability unit to the Quantity package
  • NavVis Addon: implement a stylization API for icons and pins of traffic markers.
  • NavVis Addon: implement a stylization API for waypoint markers.

Updates:

  • Hide UpdateErrorCode internal value property.
  • Hide InstallState internal value property.
  • Hide MapOperationType internal value property.
  • Hide RegionGraphNodeId internal value property.
  • Hide UpdateState internal value property.

version 0.3.1181 - 12/12/2022

Search

Breaking changes:

  • SearchResult has been refactored so position and address are now encapsulated under Place member.

New features:

  • Introduce NavigationController language change API

Updates:

  • Add availableLanguages property to GuidanceEngine API
  • Extend TrafficError with specific errors.

General

Breaking changes:

  • Changed package name from com.tomtom.sdk.common.location to com.tomtom.sdk.location
  • Change package name from com.tomtom.sdk.common.annotations.* to com.tomtom.sdk.annotations.annotations.*

Removals:

  • Remove Disposable

version 0.3.1156 - 05/12/2022

Map

New features:

  • Add VehicleController API that allows setting vehicle and show/hide restrictions on the map for the given vehicle. Add StandardStyles.VEHICLE_RESTRICTIONS style that can display aforementioned vehicle restrictions.

Fixes:

  • Update missing NotoSans fonts.

Search

Breaking changes:

  • Remove fuzzyLevel parameter from SearchOptions.
  • Remove offset parameter from SearchOptions.
  • Unify search and search along the route.

New features:

  • Add custom POI search support in hybrid mode. Custom search results are added to the beginning of the search result list.

Routing

Breaking changes:

  • Move guidance related common.route APIs under instruction

Breaking changes:

  • Reorder Instruction params to group defaulted params at the end of the constructor

Updates:

  • Update Guidance API docs
  • Expose TrafficEvent’s length

Fixes:

  • Fixed issue where distance was missing from guidance announcements when using UK units.

General

Breaking changes:

  • Change package from com.tomtom.kotlin.quantity.* to com.tomtom.quantity.*.
  • Change package from com.tomtom.sdk.common.featuretoggle.* to com.tomtom.sdk.featuretoggle.*
  • Rename com/tomtom/sdk/common/vehicle/ to com/tomtom/sdk/vehicle/

New features:

  • EvRange Addon: Support zoom level dependent style

version 0.3.1106 - 28/11/2022

Map

New features:

  • Added support for vector drawable resources.

Fixes:

  • Fix displaying code snippets in Map Display guides on Developer Portal.

Search

Breaking changes:

  • *ParkingDetailsApi renamed to *ParkingDetailProvider, ParkingInformationId to ParkingDetailId.
  • Rename acronyms in StandardCategoryId to camel case

Updates:

  • Display the distance in Search UI in a better format

Fixes:

  • Implement charging park connector details for onboard points of interest.

Routing

Breaking changes:

  • Rename InstructionPhoneticsType.IPA to InstructionPhoneticsType.Ipa and InstructionPhoneticsType.LHP to InstructionPhoneticsType.Lhp
  • Route stop source type converted to enum class.

Updates:

  • Allow all budget types for onboard range

Breaking changes:

  • Remove NavigationUiOptions.getPreferredUnits(), instead just use NavigationUiOptions.getUnits().

Updates:

  • Update NavigationConfiguration docs

Fixes:

  • Remove deprecation of properties in GuidanceAnnouncement

General

Breaking changes:

  • Change package for ViewBoundaries from com.tomtom.sdk.common.ui to com.tomtom.sdk.common.android.ui
  • Move Range and Budget to routing/common/range
  • Remove UnitSystem.AUTO, now preferred units must be implicitly used.
  • Rename NDSStoreAccessor to NdsStoreAccessor
  • Replace Disposable with AutoCloseable in data-management modules.

Updates:

  • Adding the note about missing consumption details in leg summary.
  • Mark common collections extension functions as internal

version 0.3.1056 - 18/11/2022

Map

New features:

  • Map Display Componentization feature toggle is now available in onboard mode

Search

Breaking changes:

  • Rename *ReverseGeocoderApi to *ReverseGeocoder and OnboardReverseGeocoderApi to OfflineReverseGeocoder.
  • Rename FuelPriceApi to FuelPriceProvider and OnlineFuelPriceApi to OnlineFuelPriceProvider.
  • Rename all SearchApi to *Search, Onboard to Offline*.
  • Renames ChargingStationAvailability to EvChargingAvailabilityProvider OnlineChargingStationAvailability to OnlineEvChargingAvailabilityProvider.

Updates:

  • Add parking prices displaying.

Routing

Fixes:

  • Fix waypoint optimization with route updates

Breaking changes:

  • Change TollgateInstruction.tollgateName type to TextWithPhonetics
  • Rename turnAngleInDegrees to turnAngle and change type to Angle

New features:

  • Add public interface for requesting traffic in an area

Updates:

  • Handle network locations in the map matcher and navigation process trigger.

Fixes:

  • Fix default guidance engine mode when online guidance v2 is selected.

General

New features:

  • NavVis Addon: implement on/off switch for traffic incidents visualization.

Updates:

  • In common modules and maps, mark public API that is intended to be used internally by SDK developers with @InternalTomTomSdkApi annotation.
  • Rename artifact com.tomtom.sdk:addon-evrange-visualization to com.tomtom.sdk.addons:visualization-ev-range
  • Rename artifact com.tomtom.sdk:addon-navigation-visualization to com.tomtom.sdk.addons:visualization-navigation
  • Rename artifact com.tomtom.sdk:common-android to com.tomtom.sdk.common:android
  • Rename artifact com.tomtom.sdk:common-annotations to com.tomtom.sdk.common:annotations
  • Rename artifact com.tomtom.sdk:common-collections to com.tomtom.sdk.common:collections
  • Rename artifact com.tomtom.sdk:common-core to com.tomtom.sdk.common:core
  • Rename artifact com.tomtom.sdk:common-coroutines to com.tomtom.sdk.common:coroutines-internal
  • Rename artifact com.tomtom.sdk:common-feature-toggle to com.tomtom.sdk.common:feature-toggle
  • Rename artifact com.tomtom.sdk:common-file-loader to com.tomtom.sdk.common:file-loader-internal
  • Rename artifact com.tomtom.sdk:common-functional to com.tomtom.sdk.common:functional
  • Rename artifact com.tomtom.sdk:common-geojson to com.tomtom.sdk.common:geojson
  • Rename artifact com.tomtom.sdk:common-http-framework to com.tomtom.sdk.common:http-framework
  • Rename artifact com.tomtom.sdk:common-http-handler to com.tomtom.sdk.common:http-handler-internal
  • Rename artifact com.tomtom.sdk:common-mapreferencesnds to com.tomtom.sdk.common:map-references-nds-internal
  • Rename artifact com.tomtom.sdk:common-mapreferences to com.tomtom.sdk.common:map-references
  • Rename artifact com.tomtom.sdk:common-net to com.tomtom.sdk.common:net-internal
  • Rename artifact com.tomtom.sdk:common-route to com.tomtom.sdk.common:route
  • Rename artifact com.tomtom.sdk:common-tile-data-provider to com.tomtom.sdk.common:tile-data-provider
  • Rename artifact com.tomtom.sdk:common-vehicle to com.tomtom.sdk.common:vehicle
  • Rename artifact com.tomtom.sdk:location-android to com.tomtom.sdk.location:provider-android
  • Rename artifact com.tomtom.sdk:location-api to com.tomtom.sdk.location:provider
  • Rename artifact com.tomtom.sdk:location-gms to com.tomtom.sdk.location:provider-gms
  • Rename artifact com.tomtom.sdk:location-mapmatched to com.tomtom.sdk.location:provider-map-matched
  • Rename artifact com.tomtom.sdk:location-proxy to com.tomtom.sdk.location:provider-proxy
  • Rename artifact com.tomtom.sdk:location-simulation to com.tomtom.sdk.location:provider-simulation
  • Rename artifact com.tomtom.sdk:maps-data-provider to com.tomtom.sdk.maps:data-provider
  • Rename artifact com.tomtom.sdk:maps-display-compose to com.tomtom.sdk.maps:map-display-compose
  • Rename artifact com.tomtom.sdk:maps-display to com.tomtom.sdk.maps:map-display
  • Rename artifact com.tomtom.sdk:gesture-detectors to com.tomtom.sdk.maps:gesture-detector
  • Rename artifact com.tomtom.sdk:maps-onboard-data-provider to com.tomtom.sdk.maps:data-provider-offline
  • Rename artifact com.tomtom.sdk:maps-display-onboard-style to com.tomtom.sdk.maps:style-provider-offline
  • Rename artifact com.tomtom.sdk:maps-onboard-tile-data-provider to com.tomtom.sdk.maps:tile-data-provider-offline
  • Rename artifact com.tomtom.sdk:navigation to com.tomtom.sdk.navigation:navigation
  • Rename artifact com.tomtom.sdk:navigation-horizon-engine-onboard to com.tomtom.sdk.navigation:horizon-engine-offline
  • Rename artifact com.tomtom.sdk:navigation-location-context-engine-common to com.tomtom.sdk.navigation:location-context-provider-engine-common-internal
  • Rename artifact com.tomtom.sdk:navigation-location-context-engine-hybrid to com.tomtom.sdk.navigation:location-context-provider-engine-hybrid
  • Rename artifact com.tomtom.sdk:navigation-location-context-engine-onboard to com.tomtom.sdk.navigation:location-context-provider-engine-offline
  • Rename artifact com.tomtom.sdk:navigation-location-context-engine-online to com.tomtom.sdk.navigation:location-context-provider-engine-tilestore
  • Rename artifact com.tomtom.sdk:navigation-map-matching-engine-common to com.tomtom.sdk.navigation:map-matching-engine-common-internal
  • Rename artifact com.tomtom.sdk:navigation-map-matching-engine-hybrid to com.tomtom.sdk.navigation:map-matching-engine-hybrid
  • Rename artifact com.tomtom.sdk:navigation-map-matching-engine-onboard to com.tomtom.sdk.navigation:map-matching-engine-offline
  • Rename artifact com.tomtom.sdk:navigation-map-matching-engine-online to com.tomtom.sdk.navigation:map-matching-engine-tilestore
  • Rename artifact com.tomtom.sdk:navigation-route-projection-engine-common to com.tomtom.sdk.navigation:route-projection-engine-common-internal
  • Rename artifact com.tomtom.sdk:navigation-route-projection-engine-online to com.tomtom.sdk.navigation:route-projection-engine-tilestore
  • Rename artifact com.tomtom.sdk:navigation-verbal-message-generation to com.tomtom.sdk.navigation:verbal-message-generation
  • Rename artifact com.tomtom.sdk:navigation-dynamic-routing-common to com.tomtom.sdk.navigation:route-replanner-common-internal
  • Rename artifact com.tomtom.sdk:navigation-dynamic-routing-online to com.tomtom.sdk.navigation:route-replanner-default
  • Rename artifact com.tomtom.sdk:navigation-dynamic-routing-hybrid to com.tomtom.sdk.navigation:route-replanner-hybrid
  • Rename artifact com.tomtom.sdk:navigation-dynamic-routing-api to com.tomtom.sdk.navigation:route-replanner
  • Rename artifact com.tomtom.sdk:navigation-service to com.tomtom.sdk.navigation:service
  • Rename artifact com.tomtom.sdk:navigation-ui to com.tomtom.sdk.navigation:ui
  • Rename artifact com.tomtom.sdk:routing-common to com.tomtom.sdk.routing:common
  • Rename artifact com.tomtom.sdk:range-client-api to com.tomtom.sdk.routing:range-calculator
  • Rename artifact com.tomtom.sdk:range-client-onboard to com.tomtom.sdk.routing:range-calculator-offline
  • Rename artifact com.tomtom.sdk:range-client-online to com.tomtom.sdk.routing:range-calculator-online
  • Rename artifact com.tomtom.sdk:routing-client-api-coroutines to com.tomtom.sdk.routing:route-planner-coroutines
  • Rename artifact com.tomtom.sdk:routing-client-api to com.tomtom.sdk.routing:route-planner
  • Rename artifact com.tomtom.sdk:routing-client-hybrid to com.tomtom.sdk.routing:route-planner-hybrid
  • Rename artifact com.tomtom.sdk:routing-client-onboard to com.tomtom.sdk.routing:route-planner-offline
  • Rename artifact com.tomtom.sdk:routing-client-online to com.tomtom.sdk.routing:route-planner-online
  • Rename artifact com.tomtom.sdk:routing-common-client-online to com.tomtom.sdk.routing:routing-common-client-online
  • Rename artifact com.tomtom.sdk:routing-verbal-messages to com.tomtom.sdk.routing:verbal-messages
  • Rename artifact com.tomtom.sdk:search-additional-data-client-online to com.tomtom.sdk.search:additional-data-online
  • Rename artifact com.tomtom.sdk:search-common to com.tomtom.sdk.search:common
  • Rename artifact com.tomtom.sdk:dynamic-data-client-api to com.tomtom.sdk.search:dynamic-data
  • Rename artifact com.tomtom.sdk:dynamic-data-client to com.tomtom.sdk.search:dynamic-data-online
  • Rename artifact com.tomtom.sdk:reverse-geocoding-client-api to com.tomtom.sdk.search:reverse-geocoder
  • Rename artifact com.tomtom.sdk:reverse-geocoding-client-hybrid to com.tomtom.sdk.search:reverse-geocoder-hybrid
  • Rename artifact com.tomtom.sdk:reverse-geocoding-client-onboard to com.tomtom.sdk.search:reverse-geocoder-offline
  • Rename artifact com.tomtom.sdk:reverse-geocoding-client-online to com.tomtom.sdk.search:reverse-geocoder-online
  • Rename artifact com.tomtom.sdk:search-client-api to com.tomtom.sdk.search:search
  • Rename artifact com.tomtom.sdk:search-client-hybrid to com.tomtom.sdk.search:search-hybrid
  • Rename artifact com.tomtom.sdk:search-client-onboard to com.tomtom.sdk.search:search-offline
  • Rename artifact com.tomtom.sdk:search-client-online to com.tomtom.sdk.search:search-online
  • Rename artifact com.tomtom.sdk:search-ui to com.tomtom.sdk.search:ui
  • Rename artifact com.tomtom.sdk:structured-search-client-api to com.tomtom.sdk.search:structured-search
  • Rename artifact com.tomtom.sdk:structured-search-client-onboard to com.tomtom.sdk.search:structured-search-offline
  • Rename artifact com.tomtom.sdk:telemetry-api to com.tomtom.sdk.telemetry:telemetry
  • Rename artifact com.tomtom.sdk:telemetry-sensoris to com.tomtom.sdk.telemetry:sensoris
  • Rename artifact com.tomtom.sdk:telemetry-tomtom to com.tomtom.sdk.telemetry:telemetry-default
  • Rename artifact com.tomtom.sdk:traffic-client-api to com.tomtom.sdk.traffic:traffic
  • Rename artifact com.tomtom.sdk:traffic-client-tpeg to com.tomtom.sdk.traffic:tpeg
  • Rename artifact com.tomtom.sdk:telemetry-sensoris to com.tomtom.sdk.telemetry:sensoris
  • Rename artifact com.tomtom.sdk:vehicle-client-api to com.tomtom.sdk.vehicle:vehicle-provider

version 0.3.1014 - 11/11/2022

Map

Updates:

  • Update TomTom logo.

Fixes:

  • Use view context instead of application context
  • Fix crash after the phone orientation change.

Search

New features:

  • Support geo-bias for polygons and multiple search areas.

Updates:

  • Improved search developer guide, added dynamic data documentation.

Routing

Breaking changes:

  • Convert AnnouncementPoints enum to value class.
  • Convert AvoidType to value class.
  • Convert ComputeTravelTimeFor enum to value class.
  • Convert ConsiderTraffic enum to value class.
  • Convert ExtendedSections enum to value class.
  • Convert ProgressPoints enum to value class.
  • Convert ReportType enum to value class.
  • Convert SectionType enum to value class.
  • Make maxFerryLength parameter experimental
  • Make message mandatory parameter of RoutingError.
  • Remove AnnouncementManeuver from com.tomtom.sdk.common.route.Announcement.
  • Remove maxFerryLength from RangeCalculationOptions, hardcode to 20km
  • Rename HybridRoutingApi to HybridRoutePlanner.
  • Rename OnboardRoutingApi to OfflineRoutePlanner.
  • Rename OnlineRoutingApi to OnlineRoutePlanner.
  • Rename RoutingApi to RoutePlanner.
  • Rename com.tomtom.routing.api to com.tomtom.routing.
  • Rename com.tomtom.routing.onboard to com.tomtom.routing.offline.
  • Rename com.tomtom.sdk.common.common.route.Instruction.isPossibleToCombineWithNext to combineWithNext.

New features:

  • Write online reachable offset to route summary

Fixes:

  • Requesting unsupported speed limit sections for non-motorized will not result in a no-route-found anymore.
  • Short routes were wrongly mapped to shortest.

Breaking changes:

  • Remove message property from com.tomtom.sdk.route.Announcement
  • Remove routing verbal message generator from public API.
  • Rename GuidanceEngineFactory method create to createStaticGuidanceEngine.
  • Use current location to resolve the Unit System when it is set to AUTO.
  • Move ChargingInformation to common.ev
  • Move com.tomtom.sdk.navigation.InstructionPhase to com.tomtom.sdk.navigation.guidance.
  • Refactor DynamicRoutingApi to RouteReplanner.
  • Remove announcementGenerators from com.tomtom.sdk.navigation.guidance.GuidanceEngineOptions.
  • Remove com.tomtom.sdk.navigation.guidance.AnnouncementGenerator from public API.
  • Rename HybridDynamicRoutingApi to HybridRouteReplanner.
  • Rename OnlineDynamicRoutingApi to DefaultRouteReplanner.
  • Rename RoutePoint to RouteStop.
  • Rename com.tomtom.navigation.dynamicrouting.* to com.tomtom.navigation.routereplanner.*
  • Replace Disposable interface with AutoClosable in Navigation and TTS modules.

New features:

  • Add option to define RouteProjectionEngine in NavigationConfiguration
  • Introduce TileCacheRouteProjectionEngineFactory to simplify creation of the RouteProjectionEngine
  • Add SafetyLocationDataPoller and DataSource interface
  • Add SafetyLocationProvider…

Updates:

  • Convert non-exhaustive enum classes to value classes

General

New features:

  • NavVis Addon: implement on/off switch for traffic incidents visualization.

Updates:

  • In common modules and maps, mark public API that is intended to be used internally by SDK developers with @InternalTomTomSdkApi annotation.

version 0.3.913 - 28/10/2022

Map

Breaking changes:

  • Moved and renamed com.tomtom.sdk.maps.display.location.LocationMarkerType to com.tomtom.sdk.maps.display.location.LocationMarkerOptions.Type
  • Moved and renamed com.tomtom.sdk.maps.display.ui.compass.VisibilityPolicy to com.tomtom.sdk.maps.display.ui.compass.CompassButton.VisibilityPolicy
  • Moved and renamed com.tomtom.sdk.maps.display.ui.currentlocation.VisibilityPolicy to com.tomtom.sdk.maps.display.ui.compass.CompassButton.VisibilityPolicy
  • Moved and renamed com.tomtom.sdk.maps.display.ui.currentlocation.VisibilityPolicy to com.tomtom.sdk.maps.display.ui.currentlocation.CurrentLocationButton.VisibilityPolicy
  • Moved and renamed com.tomtom.sdk.maps.display.ui.logo.VisibilityPolicy to com.tomtom.sdk.maps.display.ui.logo.LogoView.VisibilityPolicy

Search

Breaking changes:

  • Move the charging park and entry point to POI.

New features:

  • Implement TomTom’s Online Parking Availability API

Routing

New features:

  • Rename consumption field in summary

Breaking changes:

  • Rename OnboardHorizonEngineFactory to OfflineHorizonEngineFactory
  • Rename OnboardLocationContextProviderEngineFactory to OfflineLocationContextProviderEngineFactory
  • Rename OnboardMapMatchingEngineFactory to OfflineMapMatchingEngineFactory
  • Rename OnlineMapMatchingEngine to TileCacheMapMatchingEngine
  • Rename OnlineRouteProjectionEngineFactory to TileCacheRouteProjectionEngineFactory
  • Rename OnlineRouteProjectionEngineOptions to TileCacheRouteProjectionEngineOptions
  • Rename RouteProgressCalculationEngine to RouteProgressEngine
  • Rename RouteProgressCalculationEngineFactory to RouteProgressEngineFactory
  • Rename TomTomArrivalDetectionEngineFactory to DefaultArrivalDetectionEngineFactory
  • Rename TomTomLocationContextProviderEngineFactory to LegacyLocationContextProviderEngineFactory
  • Rename TomTomMapMatchingEngineFactory to LegacyMapMatchingEngineFactory
  • Rename OnErrorListener to OnNavigationErrorListener

Location

Fixes:

  • Filter network location updates.

General

Updates:

  • NdsStore listeners now use functional interfaces.
  • Make default constants public and update documentation

version 0.3.880 - 25/10/2022

Map

Breaking changes:

  • Migrate from Disposalbe to AutoCloseable in MapDisplay public api signature
  • Remove constructor for output objects from public API.

New features:

  • Introduced the onboard data provider for map tiles based on new data provider api
  • Add support for geopolitical view.

Updates:

  • When the map display componentization feature toggle is enabled, the old persistent tile cache used by httpframework is removed
  • Add Cancellable as return value to methods with callbacks, that should remove callbacks and/or cancel asynchronous execution.
  • Update Map Styles guide with satellite style section.
  • Update Map Styles guide with the hill shading section.

Fixes:

  • Fix the issue that locale and timezone was not handled properly for http headers
  • Fix the test for cancellation of request token in asset data provider.
  • Fix ScaleView blinks with wrong values
  • Put markers layers on the top of everything else

Search

Breaking changes:

  • Changed SearchResultId, added interface for fuel prices request.
  • Migrate from Disposable to AutoCloseable in Search and ReverseGeocoder public api signature.

New features:

  • Add EV connector and fuel type filters for search.
  • Add OnlineFuelPriceApi implementation that allows to request fuel prices.
  • Add support for min and max power for EV POI filtering.

Updates:

  • Added package for the dynamic data fuel price API.

Routing

Breaking changes:

  • Migrate from Disposable to AutoCloseable.
  • Remove ChargingParkLocation from public API

New features:

  • Add onboard range calculation pt 3/3: API

Breaking changes:

  • Use factories for TomTom navigation engines creation.
  • Add Vehicle field to Navigation snapshot.
  • Replace input parameters in MapMatchingEngine with NavigationSnapshot
  • Unify methods in MapMatchingEngine to remove the distinction between route and map matching.

New features:

  • Implement online guidance v2 mode
  • Trigger guidance with specific configuration for current country.

Updates:

  • Add API to update unit system of GuidanceEngine

Fixes:

  • Disable flaky test in GuidanceCollaborationTests.
  • Move TrafficApi to Public preview.

General

New features:

  • NavVis Addon: enable the user to select a route (during the route planning phase) even when clicking on parts of the route with a traffic line.
  • NavVis Addon: hide the departure marker and override the destination marker’s pin image; put an explanation in the documentation detailing how to customize destination and waypoint markers.
  • Navigation Visualization Add-on: stylization API now provides a way to control traffic markers' visibility depending on the camera’s ZL and tilt angle.

Updates:

  • Align add/remove listeners behaviour
  • Allow user to specify a cache policy for Map Visualization.
  • Cache data is stored now during the expected amount of time.

Fixes:

  • Fix Quantities rounding

version 0.3.782 - 14/10/2022

Search

Breaking changes:

  • Remove brand and category from ResultType

version 0.3.773 - 11/10/2022

Map

New features:

  • The componentization of map display is now available under map display componentization feature toggle

Updates:

  • Apply api-guidelines rules to public constants.

Search

Breaking changes:

  • Revert ev stations filter back to minPower and maxPower, use Power type.

Fixes:

  • Fix filtering using result types.
  • Fix for unsupported language tag.
  • Make point addresses findable.

Routing

Breaking changes:

  • Remove startPointIndex from route instruction.

New features:

* * Introduce Horizon Engine. * Periodic retriggering of guidance announcements.

Updates:

  • Improve message representation in GuidanceAnnouncement
  • Validate GuidanceAnnouncement at construction
  • DynamicRoutingApi interface now inherits from AutoCloseable interface.
  • Propagate more navigation errors to the NavigationStartedCallback.
  • Clarify documentation for MatchedLocation.location.course and MatchedLocation.direction

Fixes:

  • Navigation process continuously works even if the user is stopping.

General

Breaking changes:

  • Split Units.IMPERIAL to UnitSystem.US and UnitSystem.UK

New features:

  • Adds possibiltiy to remove an item from the map

Updates:

  • Navigation Visualization Add-on: default stylization values/constants are now public.
  • Renamed Units → UnitSystem

version 0.3.678 - 30/09/2022

Search

New features:

  • Hybrid POI categories request.
  • Supporting for requestPoiDetails in hybrid search mode.

Fixes:

  • Fix search to use predictive input instead of exact.

Routing

New features:

  • Introduce routing coroutines module.
  • Enable vehicle (truck) onboard routing

Updates:

  • Phonetic alphabet is updated in Route created from online response

Fixes:

  • Fix online routing request language parameter.
  • Fixing route planning cacellation

New features:

  • Pass Route to the VehicleHorizon
  • Speed view dark mode

Updates:

  • Tests are refactored and added regression testing of NAV-92134

Location

Updates:

  • SimulationLocationEngine supports using current timestamps

General

New features:

  • Adds possibility to observe the completion
  • Improve performance of caching, introducing an in-memory cache in HttpHandler.

Updates:

  • Remove EV Range Add-on color resources
  • Improve guidance in the navigation use case tutorial.

version 0.3.614 - 22/09/2022

Map

New features:

  • Introduces an asset data provider based on MapDisplayDataProvider interface that handles asset requests by map display engine using FileLoader.

Fixes:

  • Fixed map rotation focal point and focal point drifting on zoom in/out

Search

New features:

  • Match protobuf file on library side to support alpha2 codes

Updates:

  • Make hybrid reverse geocoder use online and onboard APIs.

Fixes:

  • Fix documentation links for RectangleGeometry, CircleGeometry and PolygonGeometry in SearchOptions.
  • Fixed online brand name filtering for the cases with comma, ampersand and trailing spaces.

Routing

New features:

  • Add first step of onboard routing conversion for vehicles

New features:

  • Extended guidance engine to allow disabling of guidance announcements
  • Extended guidance engine with support for compact announcements.
  • Horizon Engine API.

Updates:

  • Decision by steering for a better route proposal
  • Updated documentation of DynamicRoutingAPI
  • Decision by steering for better proposal

Fixes:

  • Fix sharp and slight turn announcements for far away maneuvers

General

New features:

  • Navigation Visualization Add-on: images/icons are now stored as resources instead of assets. With this change, the device’s density dpi configuration is taken into account when loading images/icons.

version 0.3.571 - 15/09/2022

Map

Fixes:

  • Fix update camera position for latitudes lower than -85.0 and greater than 85.0.
  • Improved rotation detection threshold

Routing

New features:

  • Interface for incremental route content update

New features:

  • Next Guidance Instruction changes only when the maneuver path for the previous instruction is passed.

Fixes:

  • Fixed an issue where driving onto other RouteLeg resulted in route progress jump and waypoints on the previous RouteLeg being marked as visited.

General

Breaking changes:

  • Use com.tomtom.kotlin.quantity.Distance instead of com.tomtom.sdk.common.measures.Distance

version 0.3.531 - 09/09/2022

Search

Fixes:

  • The search properties passed to setupSearch now are used.

Routing

Breaking changes:

  • Expose charging connection information in routing client API

New features:

  • Hybrid client supports iterative route planning.

Fixes:

  • Guidance UI only shows combined instructions for Main and Confirmation phases

General

Updates:

  • Update navigation start tutorial video asset.

Fixes:

  • Fix UI controls overlapping for navigation use case tutorial.

version 0.3.509 - 02/09/2022

Map

New features:

  • Extend Polyline to support different widths across zoom levels.

Updates:

  • Created demo screen for showcasing styles switching and layers configuration. Has a different UI in landscape mode

Search

New features:

  • Hybrid reverse geocoder api.

Routing

Breaking changes:

  • Make consumption fields optional and use quantities in the route summary.

Updates:

  • Clarify vehicle length in documentation.

Fixes:

  • Fix early announcements for "Bear Left/Right" instructions
  • Fix roundabout exit instruction icons in onboard mode
  • Trigger arrival announcement, when it is just after the other instruction.

Location

Updates:

  • Added permission requirement annotation. Caught security exception in maps-demo-app.

General

New features:

  • Navigation Visualization Add-on: support for on-route traffic lines with different widths across zoom levels

version 0.3.482 - 26/08/2022

Map

New features:

  • Added copyrights and terms & conditions screen to maps and navigation demo app.

Fixes:

  • Maneuvers arrows issue fixed.
  • Updated CameraTrackingMode documentation.

Search

Breaking changes:

  • 'additionalDataSearch' renamed to requestGeometryData. Related classes: ..Options, ..Callback, ..Result changed accordingly. AdditionalDataSearchError removed, SearchError is used instead.
  • Added requestPoiDetails API. The Poi properties type have been changed for: categoryIds and openingHours.
  • Reverse geocoder now requires Context for its creation.
  • Upgrade poi categories API to new version

New features:

  • The POI details in onboard mode have opening hours (were available).
  • RequestPoiDetails API has been implemented for the onboard mode.
  • Implement online POI Details
  • Return opening hours in online POI details
  • Implement onboard poi category search

Updates:

  • Onboard POI category search in maps demo app

Fixes:

  • Fix for invalid language query parameter in the search request.
  • Fix to show opening hours with POI details in online mode.
  • Support providing search API to SearchFragment before onCreate is called

Routing

Breaking changes:

  • Add a summary field to RouteLeg
  • Allow dimensions on all motorized vehicles
  • Change maxSpeed type to nullable
  • Remove leftover ConsumptionUnit type

New features:

  • Add Electric Vehicle Routing Options and Vehicle Model Id
  • EV routing response builder
  • Expose traffic length and traffic delay information in the Onboard Route summary.
  • Hybrid routing API.
  • Onboard routing errors

Updates:

  • Fix typo in Planning Routes documentation
  • Update ApiKeyError documentation

Fixes:

  • Hybrid routing client notifies the callback of planned routes.
  • Remove dead code

New features:

  • Display next instruction after roundabout exit in NIP
  • Show forward arrow in Guidance view during follow phase for instruction.

Updates:

  • Implement option to adapt TTS language to a message language
  • Update radius threshold for waypoint arrival check based on road type.

Fixes:

  • Fix an issue that causes route progress calculation to be vulnerable to loops in the route in certain situations.
  • Fix calculating remaining coordinates for replanning.
  • Fixed crash in NavigationFragment during lifecycle when TomTomNavigation was not set
  • Improve combination of instructions (instructions are only combined when main announcement for second instruction will not be made).
  • Populate better route proposal in NavigationSession.
  • Remove a better route proposal when it is no longer tracked
  • Use freeway icon if the MergeGuidancInstruction.mergeSide is null.
  • Remove better proposal if no longer tracked

General

New features:

  • Add range visualization add-on.
  • Navigation Visualization Add-on: Implements stylization API for the on-route traffic incidents.

version 0.3.344 - 12/08/2022

Map

New features:

  • Add PolygonOverlay primitive.
  • Added Satellite Imagery Style

Fixes:

  • Persist state of the map between fragment view recreations.

Search

Breaking changes:

  • Support onboard NDS category filtering

Routing

Updates:

  • Add 'route to include' to range options
  • If exit direction in instruction is not specified explicitly, derive it from the driving side.

Breaking changes:

  • Add currentPhase to OnGuidanceUpdateListener
  • RouteReplanningPolicy is removed and ContinuousReplanningMode is altered
  • Move route selection logic to handler

New features:

  • Add language support to OnboardLocationContextProviderEngine

Updates:

  • Extract a vehicle type from route plan options.

Fixes:

  • Fix for missing mandatory turn instruction announcements in onboard mode
  • Route update should fail when active route cannot be updated

General

New features:

  • Adds a method to install or update an NDS map region to the latest version.

Fixes:

  • Fixed incorrect placing of the PublicPreview notice in the documentation.

version 0.3.303 - 05/08/2022

Map

Fixes:

  • Fix write to parcel TimeToLive cache policy.
  • Introduced API for mark route as followable.

Search

Breaking changes:

  • Few changes to auto-complete API.
  • Fusing TTOM standard category and map specific NDS category into one.
  • Some fields changed/removed for the search along route options and response.
  • Various improvements for SearchResult.

Fixes:

  • Fix for the onboard search mode: the search area along the route appeared twice wider than expected.

Routing

Breaking changes:

  • Distance and Energy budgets can now be used
  • Move Routing Options to routing-common
  • Move RoutingError to routing.common
  • Rename PlanRouteOptions to RoutePlanningOptions
  • Use proper constructors for the different types of vehicles

New features:

  • Routing request language

Updates:

  • Add calculateRange stubs
  • Update vehicle section in route planning guide
  • Use basic routing API if no extended guidance features are requested

Fixes:

  • Fixed mapping of signpost phonetic text for online instructions

Breaking changes:

  • Remove unused fields from GuidanceAnnouncement
  • Add 'Route' as param to OnDestinationReachedListener.onDestinationReached callback.

Updates:

  • Use a type-safe wrapper for representing NDS Arc keys.
  • Extend MapMatchingResult

Fixes:

  • Fix extra at the end of the road messages added to guidance announcements in onboard mode
  • Fix constant rerouting when starting a little far from the route.
  • Fixed crash in onboard message generation
  • Include destination progress data in the RouteProgress.remainingRoutePointsProgress.

General

Breaking changes:

  • Replace common.time.Duration with kotlin.time.Duration.

New features:

  • Displays markers on the on-route traffic incidents for the navigation visualization add-on.

version 0.3.249 - 29/07/2022

Map

Breaking changes:

  • Rename compose module from display-compose to maps-display-compose

Fixes:

  • Fix update logic of marker pin icon
  • Fix of map crash on orientation change

Search

Breaking changes:

  • Poi fields added/changed/removed.
  • Removed AdditionalDataSearchOptions.Builder in favour of constructor with default parameters
  • Removed AlongRouteSearchOptions.Builder in favour of constructor with default parameters
  • Removed AutocompleteSearchOptions.Builder in favour of constructor with default parameters
  • Removed FuzzySearchOptions.Builder in favour of constructor with default parameters
  • Migrate PoiCategory to Category

Routing

Breaking changes:

  • Move TravelMode into Vehicle
  • PlanRouteOptions gets an additional field dedicated to leg specific information. User provided supporting points option should be passed to the new RouteLegOptions field.
  • Provide country name for border crossing instructions
  • Provide phonetics in addition to plain text for intersection name in route instructions
  • Replaced RoadInformation.roadName, roadNamePhonetics, roadNumbers, roadNumbersPhonetics with TextWithPhonetics
  • Replaced Signpost.exitNumber, exitNumberPhonetic, exitName, exitNamePhonetic, towardName, towardNamePhonetic with TextWithPhonetics
  • Rewrite API for PlanRoute
  • Use unit system for vehicle & consumption values
  • Move chargeLevel from ElectricVehicleConsumption to ElectricEngine, move currentFuel from CombustionConsumption to CombustionEngine

Fixes:

  • Fix RouteType links in documentation
  • Fix route planning when alternatives are specified

Breaking changes:

  • Introduced new types for GuidanceInstruction.roadInformation, signpost
  • Provide country name for border crossing instructions

New features:

  • Remove nextManeuver from GuidanceAnnouncement and add combine flag to GuidanceInstruction

Updates:

  • Add change of speed bubble ui logic and assets
  • Improvements on audio messages for onboard mode
  • Add support for multiple languages and unit systems for onboard audio messages
  • Arrival panel from now takes the destination name from itinerary destination or last instruction street name

Fixes:

  • Fixed crash that happens shortly before arrival when there was previous route refresh

General

New features:

  • An API to query the structure of the onboard

version 0.3.196 - 20/07/2022

Map

Breaking changes:

  • TileDataProvider no longer provided to MapOptions, but to TomTomMapConfig instead.

New features:

  • Add TextureView support for map display.
  • Added camera tracking route overview mode
  • MapVisualisation TileDataProvider integrated with StoreAccessSync and enabled for map updates.

Updates:

  • Map orientation follows the current position heading.
  • Make map to have different sky colors for light and dark mode.
  • Re-order layers in layer mapping file

Fixes:

  • Fix slow panning map and map interaction around the north and south pole.
  • Map scaling to the wrong point fixed.
  • Fix of crash for multiple compose maps on single screen

Search

Breaking changes:

  • Field 'functions' removed from EntryPoint.
  • OpeningHoursMode is changed to value class for maintaining backwards compatibility while adding new values.

New features:

  • Provide polygon geometry data in reverse geocoder response
  • Provide multipolygon geometries in reverse geocoder

Fixes:

  • Fix for reverse geocoding failure for international waters.
  • Handle unidentified road use type while reverse geocoding.

Routing

Breaking changes:

  • Fixing the vehicle hierarchy
  • Introduce Route Summary
  • Removed CombustionEngine.Builder in favour of constructor with default parameters
  • Removed ElectricEngine.Builder in favour of constructor with default parameters
  • Removed PlanRouteOptions.Builder in favour of constructor with default parameters
  • Removed Vehicle.Builder in favour of constructor with default parameters
  • Removed VehicleDimensions.Builder in favour of constructor with default parameters
  • Removed VehicleEfficiency.Builder in favour of constructor with default parameters
  • Rename RoutingOptions, -Result, -Callback to PlanRouteResult etc.
  • Roundabout direction values changed to "Cross", "Right", "Left", "Back".

New features:

  • Add Landmark to route instruction
  • Add side street and traffic light offsets to route instructions.
  • Added quantized turn angle to roundabout and exit roundabout instructions.
  • Provide road types in instruction road information.

Updates:

  • PlanRouteOptions related classes were moved, please refer to "Planning a route" guide

Fixes:

  • Update documentation links for PlanRouteRequest

Breaking changes:

  • Remove junctionType from Route and Navigation instructions
  • Remove maneuverType from Route and Navigation instructions
  • Accept RouteProgress in MapMatchingEngine for route matching
  • Changed Route id type from String to RouteId
  • Removed builder from NavigationConfiguration in favour of constructor with default values
  • Removed builder from NavigationUiOptions in favour of constructor with default values
  • Roundabout direction values changed to "Cross", "Right", "Left", "Back".

New features:

  • Add map-matching a point to the route.
  • Add navigation history
  • Added quantized turn angle to roundabout and exit roundabout guidance instructions.
  • Currently visited waypoint logic implemented in RouteTrackingEngine
  • Integrate map access sync with onboard map matching
  • Introduced RouteProgressCalculationEngineFactory as a default way of creating an implementation of the engine.
  • Introduced RouteTrackingEngineFactory as a default way of creating default implementation of the engine
  • Show intersection name in next instruction panel for Japan
  • IsWaypointCurrentlyVisited exposed in NavigationSnapshot
  • Add support for position predictions in OnboardMapMatchingEngine

Updates:

  • Replace ReplanningParameters with NavigationSnapshot in the RouteReplanningEngine.
  • Throw IllegalStateException if more than one navigation is started.

Fixes:

  • Fix Navigation Quickstart guide description of the used LocationEngine.
  • Fix road shields overlapping motorway exit.
  • Location is properly reported even when outside current route

General

New features:

  • Adds on-route traffic incidents display for the navigation visualization add-on.
  • Telemetry handles user consent
  • Navigation sends telemetry probe data on location update

Updates:

  • Temporarily add TomTom’s Quantity library to this project.
  • Describe how to add new e2e module tests for CI in TESTING.md file .

Fixes:

  • Do not obfuscate Quantity lib

version 0.2.2464 - 22/06/2022

Search

Fixes:

  • Set the language in the proto builder

Breaking changes:

  • Replace RouteDeviationEngine with RouteTrackingEngine

version 0.2.1457 - 20/06/2022

Map

Breaking changes:

  • Changed LaneBoundaryType.LONG_DASHE_LINE to LaneBoundaryType.LONG_DASHED_LINE

Updates:

  • Switch to V2.1 styles.

Fixes:

  • Add threading control to the getMapAsync() method
  • Fix missing mapping file for onboard style in navigation demo app
  • Fix invalid StyleDescriptor documentation regarding mapping file fallback for dark style.

Search

Breaking changes:

  • Return SearchApi from OnlineSearchApi
  • Reverse geocoder API refinement.
  • Switch from exceptions to errors in Reverse Geocoder API
  • Switch from exceptions to errors in Search API

New features:

  • Filter onboard search results by brand names.
  • The filter by POI categories for the onboard search results is available.
  • The filter by countries for the onboard search results is activated.
  • Add onboard search along the route

Updates:

  • Make SearchApi and ReverseGeocoderApi disposable.
  • Add an extension to SearchResult to convert to a Place
  • SearchUI improvements

Fixes:

  • Use inSeconds to get the max detour time

Routing

Breaking changes:

  • Added new Instruction interface, replacing previous single Instruction data class with implementations for each Instruction type and introduce new properties for road information, signpost.
  • Remove UNDEFINED value from AlternativeType enum
  • Remove UNDEFINED value from Hilliness enum
  • Remove UNDEFINED value from SectionType enum
  • Remove UNDEFINED value from VehicleAdrTunnelRestrictionCode enum
  • Remove UNDEFINED value from VehicleEngineType enum
  • Remove UNDEFINED value from VehicleLoadType enum
  • Remove UNDEFINED value from Windingness enum
  • Remove UNKNOWN and NONE value from AnnouncementManeuver enum
  • Remove UNKNOWN and NONE value from Maneuver enum
  • Remove UNKNOWN value from DrivingSide enum
  • Remove UNKNOWN value from LaneSeparator enum
  • Remove UNKNOWN value from MagnitudeOfDelay enum
  • Removed legacy Instruction properties: instructionType, countryCode, street, roadNumbers, exitNumber, signpostText, turnAngleInDecimalDegrees, roundaboutExitNumber, message, combinedMessage, maneuver, verbalMessage, verbalMessagePhonetics, extras).
  • Replace RoutingException with RoutingError

New features:

  • Added RoutingApiKeyException to inform about problems with API key when sending a request
  • Avoid areas onboard

Updates:

  • Made "language" parameter in RoutingOptions nullable. When not specified the device language will be used.

Breaking changes:

  • Add new GuidanceInstruction interface replacing previous single GuidanceInstruction data class with implementations for each Guidance Instruction type.
  • Changed the return type of methods in MapMatchingEngine to MapMatchingResult
  • Removed legacy GuidanceInstruction properties: instructionType, countryCode, street, roadNumbers, exitNumber, signpostText, turnAngleInDecimalDegrees, roundaboutExitNumber, message, combinedMessage, maneuver, maneuverType, verbalMessage, verbalMessagePhonetics, extras).
  • Replaced TextToSpeechEngineException with TextToSpeechEngineError
  • Made SpeedUnitsConverter class non-public

New features:

  • OnWaypointVisitedListener exposed on API and called
  • Added the possibility to specify the language in GuidanceOptions. If not specified device language will be used.
  • Introduction of stand alone route progress engine.
  • Pass only unvisited waypoints when on route replanning/refreshing
  • NavigationView added
  • Added setUnits method to NavigationFragment
  • Calculate progress information for remaining waypoints
  • Instruction messages are produced in GO SDK onboard mode (AmiGO spec)
  • Add onboard map matching engine

Updates:

  • "Method documentation was made clearer in NavigationController"
  • Improve performance of StandaloneRouteProgressCalculateionEngine with binary search
  • Replace fonts with Noto Sans.
  • Waypoints navigation documentation
  • Reset distance along route each time, except DEVIATION reason
  • Publish navigation UI components tutorial

Fixes:

  • Instructions are no longer necessary to calculate Waypoint offset
  • Stop Proguard from removing instructions package

Location

Fixes:

  • On API 31+ check existence of LocationManager.NETWORK_PROVIDER

General

Breaking changes:

  • Member 'orchestrator' (of type NdsStoreAccessSync, in NdsStore) renamed to "sync".
  • NdsStoreAccessSync uses IllegalStateException now instead of a custom one.

New features:

  • Android Telemery API

Updates:

  • Rename PublicPreview…​Feature → PublicPreview…​Api
  • Improved KDoc comments around NdsStoreAccessSync and related classes.
  • Move testing guide for contributors to TESTING.md file

version 0.2.1331 - 03/06/2022

Map

Breaking changes:

  • Migrated to private resources in maps:display module

New features:

  • Log diagnostic information to AppCenter

Updates:

  • Add OnMarkerSelectedListener to the MarkerController to remove hindering dependencies from DefaultMarkerController

Search

Breaking changes:

  • Highlight matching text in search results

New features:

  • Onboard search feature toggle. Demo for search in bounding box.

Fixes:

  • Set a default limit of search results

Routing

New features:

  • Expose extended route representation in routing module

Updates:

  • Deprecated NIE fields are removed
  • Calculate route coordinates lazily, bring back route geometry field
  • Calculate offsets for routeCoordinates with use of exten…

Removals:

  • Remove unsupported ModeOfTransport

Breaking changes:

  • Added a possibility to use Routing API or Extended Routing API depending on URL and Routing Options.

New features:

  • Waypoint arrival detection added to ArrivalDetectionEngine

Updates:

  • Add location predictions to the MatchedLocation

Fixes:

  • Adjusted Proguard settings to not remove public classes
  • RouteProgress’s arrivalTime is actually remaining time

General

New features:

  • Publish initial set of onboard components.

version 0.2.1260 - 27/05/2022

Search

Deprecated:

  • The following calls in Search API are now discontinued: downloadPoiPhoto, poiDetailsSearch

Updates:

  • Added possibility to specify system of measurement in Search UI module

General

Updates:

  • Added support for Chinese and simplified Chinese

Android version 0.2.1234

Bug fixes:

  • Fix for a random crash occurring when the map was deallocated
  • Fix for a route color not changing to asserted one

Android version 0.2.1202

Bug fixes:

  • Fix for a discrepancy in directional arrows when approaching destination
  • Fix for occasional freezes after deviation
  • Fix for map glitches while changing Light / Dark mode with Smooth Style Reload
  • Fix for route replanning not happening for a long time after deviation
  • Fix for shifted turn manoeuvre arrows on long routes

Android version 0.2.1189

New:

  • Added callbacks to Navigation start and update methods

Bug fixes:

  • Fix for directional arrows drawn partially for some instructions
  • Fix for TomTomMap.setLanguage(String) not setting language correctly

Android version 0.2.1173

Updates:

  • Lifted usage of bearing in routing requests where heading is required
  • Removed various NavigationExceptions inheritors from sealed class

Bug fixes:

  • Fix for incorrect path to the Android artefacts in project set up guide

Android version 0.2.1145

Updates:

  • Improved location predictions filtering
  • Added documentation guide for pins shrinking and fading

Bug fixes:

  • Fix for misplaced chevron from the actual position on the map
  • Fix for occasional discrepancies in directional arrows

Android version 0.2.1115

Bug fixes:

  • Fix for no arrival announcement
  • Fix for a crash when map tiles download was started on a phone with no network connection
  • Fix for missing and not restored traffic flow and incidents after changing map style
  • Fix for road labels overlapped by directional arrows

Android version 0.2.1097

New features:

  • Update of map’s style file
  • Apply translated navigation UI strings

Updated features:

  • Replanning on deviation should be executed even when there is no internet connection
  • Chevron rotating when using GmsLocationEngine

Bug fixes:

  • Missing fonts on MapView
  • Change style between light and dark not change polar caps
  • Control points not working
  • With Free driving and landscape mode, street name will be out of screen
  • Map tile loading is not smooth when swiping/pan up the map
  • Failing re-route on deviation
  • Lengthy routes calculated with Meters irrespective of Units set
  • Back-to-Route Triggering Taking Too Long
  • Current speed is greater then 0km/h when the car stops