Release Notes
Version 2.0.0-rc18 - 03/02/2026
Discover the improvements and new features included in the following version.
Share your thoughts on this release by using the feedback button located at the bottom of the page.
Common
Updates
-
The following APIs are promoted to GA:
com.tomtom.sdk.common.Bundle.containsKey(String?)com.tomtom.sdk.common.Bundle.getChar(String,Char)com.tomtom.sdk.common.Bundle.getFloat(String,Float)com.tomtom.sdk.common.Bundle.isEmpty()com.tomtom.sdk.common.graphics.Bitmapclass and all memberscom.tomtom.sdk.common.graphics.ColorSpaceclass and all memberscom.tomtom.sdk.common.graphics.RgbColorSpaceclass and all memberscom.tomtom.sdk.common.metadata.MetadataProviderclass and all members
Fixes
- Revert RSA key-pair support for security framework's
EncryptionManager. - The system no longer crashes under "unexpected end of stream" okhttp errors.
Deprecations
TaskHandleris now deprecated. Use coroutines instead.
Data Management
Breaking changes
-
Reorganize data management modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.datamanagement:nds-store->com.tomtom.sdk.datamanagement:data-storecom.tomtom.sdk.datamanagement:nds-store-updater->com.tomtom.sdk.datamanagement:data-storecom.tomtom.sdk.datamanagement:navigation-tile-store->com.tomtom.sdk.datamanagement:data-storecom.tomtom.sdk.datamanagement:navigation-data-store-hybrid->com.tomtom.sdk.datamanagement:data-store
-
Reorganize map-references module.
The following module was relocated:
com.tomtom.sdk.mapreferences:model->com.tomtom.sdk.datamanagement:map-references
Additionally, the following APIs were changed:
com.tomtom.sdk..mapreferences.MapId->com.tomtom.sdk.datamanagement.mapreferences.MapIdcom.tomtom.sdk..mapreferences.MapPosition->com.tomtom.sdk.datamanagement.mapreferences.MapPositioncom.tomtom.sdk..mapreferences.MapReferences->com.tomtom.sdk.datamanagement.mapreferences.MapReferencescom.tomtom.sdk..mapreferences.RegionId->com.tomtom.sdk.datamanagement.mapreferences.RegionId
Updates
-
Increase the default amount of memory that a
NavigationTileStoreinstance created with the publicNavigationTileStore.create()function may use to cache navigation tiles from 50 MiB to 300 MiB.- Setting a non-default value via
NavigationTileStoreConfiguration.cachingConfiguration.maxMemorySizeis not affected.
- Setting a non-default value via
-
The following API classes and all members are promoted to GA:
com.tomtom.sdk.datamanagement.nds.NdsMapUpdatercom.tomtom.sdk.datamanagement.nds.update.AutomaticMapUpdateFailureListenercom.tomtom.sdk.datamanagement.nds.update.CompletedMapOperationcom.tomtom.sdk.datamanagement.nds.update.CurrentMapOperationcom.tomtom.sdk.datamanagement.nds.update.InstallStatecom.tomtom.sdk.datamanagement.nds.update.MapOperationcom.tomtom.sdk.datamanagement.nds.update.MapOperationTypecom.tomtom.sdk.datamanagement.nds.update.MapUpdateErrorcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.Canceledcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.DatabaseErrorcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.ExclusiveAccessNotAcquiredcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.FileSystemErrorcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.InitFailedcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.InsufficientDiskSpacecom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.InvalidArgumentcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.MissingUpdatescom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.NetworkErrorcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.NoMapAvailablecom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.SharedMapAccessErrorcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.Unexpectedcom.tomtom.sdk.datamanagement.nds.update.MapUpdateError.UpdatesDisabledcom.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdatercom.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdaterConfigurationcom.tomtom.sdk.datamanagement.nds.update.NetworkConnectivityConfigurationcom.tomtom.sdk.datamanagement.nds.update.RegionGraphcom.tomtom.sdk.datamanagement.nds.update.RegionGraphListenercom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdcom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeStatecom.tomtom.sdk.datamanagement.nds.update.RegionsAlongPolylinecom.tomtom.sdk.datamanagement.nds.update.RegionsAroundPositioncom.tomtom.sdk.datamanagement.nds.update.UpdateInfocom.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfigurationcom.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.AllRegionscom.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.DataRemovalStrategycom.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.RegionsAlongRoutecom.tomtom.sdk.datamanagement.nds.update.automatic.AutomaticNdsStoreUpdaterConfiguration.RelevantRegionscom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegioncom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionIdcom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionListenercom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionOperationcom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionStatecom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionStatesDatacom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionsUpdatercom.tomtom.sdk.datamanagement.nds.update.compositeregion.CurrentCompositeRegionOperation
Fixes
- Potential deadlock in navigation when online map was updated and required cache flush.
- Readers of cached NDS.Live map data are no longer blocked while the NDS.Live cache DB is being vacuumed.
- The
createNavigationTileStore()functions now correctly set the default memory limit for caching tiles to 50 MiB when aTomTomMapsServiceURI is passed instead of erroneously using 300 MiB. The default when aTomTomOrbisMapsServiceURI is passed remains unchanged at 300 MiB. - We avoid the crash if data is missing for an intersection at a tile border.
Deprecations
-
The following API classes and all members are deprecated:
com.tomtom.sdk.datamanagement.locationdecoder.DataVersioncom.tomtom.sdk.datamanagement.locationdecoder.DecodedLocationcom.tomtom.sdk.datamanagement.locationdecoder.DecodingCoveragecom.tomtom.sdk.datamanagement.locationdecoder.DecodingFailurecom.tomtom.sdk.datamanagement.locationdecoder.DecodingFailure.DecodingErrorcom.tomtom.sdk.datamanagement.locationdecoder.DecodingFailure.NoMapAccessOnMapUpdatecom.tomtom.sdk.datamanagement.locationdecoder.DecodingFailure.ProjectionErrorcom.tomtom.sdk.datamanagement.locationdecoder.SegmentMatchStatuscom.tomtom.sdk.datamanagement.nds.NdsMapContext
General
Breaking changes
-
Add
complete/extendedproduct flavors.Use
missingDimensionStrategy("tomtom-sdk-version", <flavor_name>)in thedefaultConfigblock of your Android module to specify the default flavor used by NavSDK. Replace<flavor_name>with eithercompleteorextended, depending on your requirements. -
Change
com.tomtom.sdk.common.android.LocationMappertocom.tomtom.sdk.location.android.LocationMapper, which also requires updating the dependency declaration fromcom.tomtom.sdk.common:androidtocom.tomtom.sdk.location:provider-android. -
Reorganize common modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.common:android->com.tomtom.sdk.common:corecom.tomtom.sdk.common:metadata->com.tomtom.sdk.common:core
-
Reorganize TTS modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk:tts-engine-api->com.tomtom.sdk:ttscom.tomtom.sdk:tts-engine-android->com.tomtom.sdk:tts -
Set the maximum major version to 2.
-
Update Android
compileSDKto API level 35.
Updates
-
The following API classes and all members are promoted to GA:
com.tomtom.sdk.asset.RoadShieldIconProvidercom.tomtom.sdk.asset.RoadShieldIconProviderFailurecom.tomtom.sdk.asset.StyleModecom.tomtom.sdk.featuretoggle.FeatureTogglecom.tomtom.sdk.featuretoggle.FeatureToggleControllerobjectcom.tomtom.sdk.featuretoggle.RuntimeFeature
-
Tutorials now use the
extendedflavor.
Deprecations
- The UI modules
com.tomtom.sdk.navigation:uiandcom.tomtom.sdk.search:uiare deprecated in alignment with our product strategy. To ease migration, TomTom will publish an open-source application during Q4 with example code showing how to achieve the same use cases that were previously supported by these modules.
Virtual Horizon
Breaking changes
-
Reorganize
safetylocationsandhazardsmodules.The following modules were relocated with no changes in functionality:
com.tomtom.sdk.safetylocations:safetylocations-online->com.tomtom.sdk.safetylocations:safetylocationscom.tomtom.sdk.safetylocations:safetylocations-model->com.tomtom.sdk.safetylocations:safetylocations-commoncom.tomtom.sdk.hazards:hazards-online->com.tomtom.sdk.hazards:hazardscom.tomtom.sdk.hazards:hazards-model->com.tomtom.sdk.hazards:hazards-common
Fixes
- Added boundingbox-path intersection optimization for Horizon.
- Improved safety camera projection by fixing bounding box overlap logic.
- Change the minimum publish distance of the horizon railway crossing element from 8 m to 20 m.
- Do not publish horizon elements based on unavailable horizon attributes.
- Fixed a missing map tiles issue during location updates.
- Resolve ANR issues caused by native Vehicle Horizon service.
- Use geometry start offset to trim horizon elements.
Location
Breaking changes
com.tomtom.sdk.location.Location.geoLocationis now internal.
Updates
-
The following API classes are promoted to GA:
com.tomtom.sdk.location.Locationcom.tomtom.sdk.location.DistanceTraveledcom.tomtom.sdk.location.DrivingDirectioncom.tomtom.sdk.location.Providercom.tomtom.sdk.location.Satellitescom.tomtom.sdk.location.TurnLightIndicatorcom.tomtom.sdk.location.attitude.Attitudecom.tomtom.sdk.location.perception.Perceptioncom.tomtom.sdk.location.position.Altitudecom.tomtom.sdk.location.position.Positioncom.tomtom.sdk.location.time.Timecom.tomtom.sdk.location.velocity.VehicleSpeedcom.tomtom.sdk.location.velocity.Velocitycom.tomtom.sdk.location.android.LocationInterceptorcom.tomtom.sdk.location.Location.copy():com.tomtom.sdk.location.Locationcom.tomtom.sdk.location.OnLocationUpdateListener.onLocationUpdate(com.tomtom.sdk.location.Location)com.tomtom.sdk.location.DefaultLocationProviderFactory.create(Context,CoroutineDispatcher,LocationProviderConfig,LocationInterceptor?):LocationProvidercom.tomtom.sdk.common.android.LocationMapper.toLocation(android.location.Location):com.tomtom.sdk.location.Location
-
The following APIs are promoted to GA:
com.tomtom.sdk.location.GeoPoint.Companion.COORDINATE_COMPARISON_TOLERANCEcom.tomtom.sdk.location.GeoPoint.latitudeAnglecom.tomtom.sdk.location.GeoPoint.longitudeAnglecom.tomtom.sdk.location.IconReferenceclass and all memberscom.tomtom.sdk.location.PersonalLocationTypeclass and all memberscom.tomtom.sdk.location.RoadShield(String,IconReference?,String=,List<String>=,String=,String=)com.tomtom.sdk.location.RoadShield.iconReference:IconReferencecom.tomtom.sdk.location.poi.Source.Companion.PersonalLocationsom.tomtom.sdk.location.poi.StandardCategoryId.Companion.NonStandardcom.tomtom.sdk.location.poi.ev.Capabilityclass and all memberscom.tomtom.sdk.location.poi.ev.ChargingParkclass and all memberscom.tomtom.sdk.location.poi.ev.ChargingPointclass and all memberscom.tomtom.sdk.location.poi.ev.ChargingStationclass and all memberscom.tomtom.sdk.location.poi.ev.Connectorclass and all memberscom.tomtom.sdk.location.poi.ev.ParkingRestrictionclass and all memberscom.tomtom.sdk.location.poi.ev.Statusclass and all memberscom.tomtom.sdk.location.simulation.SimulationStrategy.calculateLocation()com.tomtom.sdk.location.traceslogger.FileExtensionclass and all memberscom.tomtom.sdk.location.traceslogger.parser.FilePickedFailureclass and all memberscom.tomtom.sdk.location.traceslogger.parser.FilePickedFailure.InvalidExtensionclass and all memberscom.tomtom.sdk.location.traceslogger.parser.FilePickedFailure.UnknownFailureclass and all memberscom.tomtom.sdk.location.traceslogger.parser.LocationTracesParserclass and all memberscom.tomtom.sdk.location.traceslogger.parser.SharedStorageFileAccessorclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.DirectoryLoggerStrategyclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.FileNameStrategyclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.LocationTracesRecorderclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.LocationTracesRecorderFactoryobject and all memberscom.tomtom.sdk.location.traceslogger.recorder.LocationTracesRecorderFailureclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.LoggerStrategyclass and all memberscom.tomtom.sdk.location.traceslogger.recorder.SharedStorageDirectoryPickerclass and all members
Deprecations
-
The following APIs are deprecated:
com.tomtom.sdk.location.android.AndroidLocationProvider(Context,CoroutineDispatcher,AndroidLocationProviderConfig=)
Map Visualization
Breaking changes
-
Reorganize map modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.maps:map-display-api->com.tomtom.sdk.maps:map-display-commoncom.tomtom.sdk.maps:map-display->com.tomtom.sdk.maps:map-display-standardcom.tomtom.sdk.maps:data-provider->com.tomtom.sdk.maps:map-data-store-commoncom.tomtom.sdk.maps:traffic-data-provider->com.tomtom.sdk.maps:map-data-store-navigationcom.tomtom.sdk.maps:hybrid-data-provider->com.tomtom.sdk.maps:map-data-store-navigationcom.tomtom.sdk.maps:data-provider-offline->com.tomtom.sdk.maps:map-data-store-navigationcom.tomtom.sdk.maps:map-data-provider->com.tomtom.sdk.maps:map-data-storecom.tomtom.sdk.maps:style-provider-offline->com.tomtom.sdk.maps:map-display-style-provider-offlinecom.tomtom.sdk.maps:map-data-store-online->com.tomtom.sdk.maps:map-data-storecom.tomtom.sdk.maps:map-data-store-hybrid->com.tomtom.sdk.maps:map-data-store-navigationcom.tomtom.sdk.maps:map-data-store-offline->com.tomtom.sdk.maps:map-data-store-navigation
Updates
-
Add
StandardStyle.OrbisMapandStandardStyle.TomTomMapvariants to theStandardStylesclass, supporting both Orbis and Genesis map styles. -
Bring 16kb page size supports to map-display module.
-
The following APIs are promoted to GA:
com.tomtom.sdk.map.display.camera.CameraOptionsFactory.positionMarkerVerticalOffset(Double):CameraOptionscom.tomtom.sdk.map.display.polygon.InnerPolygonOptionclass and all memberscom.tomtom.sdk.map.display.polygon.PolygonOverlayclass and all memberscom.tomtom.sdk.map.display.polygon.PolygonOverlayControllerclass and all memberscom.tomtom.sdk.map.display.route.Route.areInstructionsVisiblecom.tomtom.sdk.map.display.route.RouteOptions.areInstructionsVisiblecom.tomtom.sdk.map.display.dataprovider.DataProviderclass and all memberscom.tomtom.sdk.map.display.dataprovider.DataProviderListenerclass and all memberscom.tomtom.sdk.map.display.mapdatastore.common.MapDataStoreclass and all memberscom.tomtom.sdk.map.display.dataprovider.offline.TileOfflineDataProviderFactoryobject and all memberscom.tomtom.sdk.map.display.trafficdataprovider.TrafficDataProviderFactoryobject and all memberscom.tomtom.sdk.map.display.mapdataprovider.MapDataProviderFactoryobject and all memberscom.tomtom.sdk.map.display.mapdatastore.online.CacheStorageConfigurationcom.tomtom.sdk.map.display.mapdatastore.online.OnlineMapDataStoreConfigurationcom.tomtom.sdk.map.display.mapdatastore.online.OnlineMapDataStoreControllercom.tomtom.sdk.map.display.styleprovider.offline.StyleUriProviderobject and all memberscom.tomtom.sdk.map.display.visualization.navigation.GuidanceType.Companion.LaneLevelcom.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnHorizonReset(HorizonOptions)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnNavigationStateChanged(NavigationState)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnProgressUpdated(RouteProgress)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnRouteAddedListener(Route,RoutePlanningOptions,RouteAddedReason)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnRouteRemovedListener(Route,RouteRemovedReason)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnRouteUpdated(Route,RouteUpdatedReason)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnWaypointArrived(RouteStop,Route)com.tomtom.sdk.map.display.visualization.navigation.NavigationEventDispatcher.dispatchOnWaypointDeparted(RouteStop,Route)com.tomtom.sdk.map.display.visualization.navigation.NavigationVisualization.areRouteInstructionsVisiblecom.tomtom.sdk.map.display.visualization.navigation.NavigationVisualization.betterRoute:BetterRouteVisualizationcom.tomtom.sdk.map.display.visualization.navigation.NavigationVisualization.safetyLocationVisualization:SafetyLocationVisualizationcom.tomtom.sdk.map.display.visualization.navigation.NavigationVisualization.unitSystem:UnitSystemcom.tomtom.sdk.map.display.visualization.navigation.StyleConfiguration(RouteStyle=,RouteTrafficIncidentStyle=,SafetyLocationStyle=,BetterRouteStyle=)com.tomtom.sdk.map.display.visualization.navigation.StyleConfiguration.betterRouteStyle:BetterRouteStylecom.tomtom.sdk.map.display.visualization.navigation.StyleConfiguration.route:RouteStylecom.tomtom.sdk.map.display.visualization.navigation.StyleConfiguration.routeTrafficIncident:RouteTrafficIncidentStylecom.tomtom.sdk.map.display.visualization.navigation.StyleConfiguration.safetyLocationStyle:SafetyLocationStylecom.tomtom.sdk.map.display.visualization.navigation.betterroute.BetterRouteClickedListenerclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.betterroute.BetterRouteMarkerStyleclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.betterroute.BetterRouteStyleclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.betterroute.BetterRouteVisualizationclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationClickedListenerclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationCountOptionsclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationMarkerStyleclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationStyleclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.SafetyLocationVisualizationclass and all memberscom.tomtom.sdk.map.display.visualization.navigation.horizon.safetylocation.TextStyleclass and all memberscom.tomtom.sdk.map.display.visualization.poi.OnRouteDetailsclass and all memberscom.tomtom.sdk.map.display.visualization.poi.PoiClickedListenerclass and all memberscom.tomtom.sdk.map.display.visualization.poi.PoiLocationclass and all memberscom.tomtom.sdk.map.display.visualization.poi.PoiVisualizationclass and all memberscom.tomtom.sdk.map.display.visualization.poi.PoiVisualizationFactoryobject and all memberscom.tomtom.sdk.map.display.visualization.range.ColorByZoomclass and all memberscom.tomtom.sdk.map.display.visualization.range.NamedCircleclass and all memberscom.tomtom.sdk.map.display.visualization.range.NamedPolygonclass and all memberscom.tomtom.sdk.map.display.visualization.range.Rangeclass and all memberscom.tomtom.sdk.map.display.visualization.range.Range.NamedCirclesclass and all memberscom.tomtom.sdk.map.display.visualization.range.Range.NamedPolygonsclass and all memberscom.tomtom.sdk.map.display.visualization.range.RangeStyleclass and all memberscom.tomtom.sdk.map.display.visualization.range.RangeVisualizationclass and all memberscom.tomtom.sdk.map.display.visualization.range.RangeVisualizationFactoryobject and all memberscom.tomtom.sdk.map.display.visualization.range.StyleByZoomclass and all memberscom.tomtom.sdk.map.display.visualization.range.WidthByZoomclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RouteStyleclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RouteStyle.DestinationConnectionLineStyleclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RouteStyle.EvWaypointMarkerStyleclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RouteStyle.LinePatternDisplayclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RouteStyle.RouteVehicleRestrictionLineStyleclass and all memberscom.tomtom.sdk.map.display.visualization.routing.RoutingVisualization.areRouteInstructionsVisiblecom.tomtom.sdk.map.display.visualization.routing.StyleConfiguration(RouteStyle=,RouteTrafficIncidentStyle=)com.tomtom.sdk.map.display.visualization.routing.StyleConfiguration.route:RouteStylecom.tomtom.sdk.map.display.visualization.routing.StyleConfiguration.routeTrafficIncident:RouteTrafficIncidentStylecom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyleclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyle.LinePatternDisplayclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyle.MagnitudeOfDelayKeyclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyle.MagnitudeOfDelayPropertiesclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyle.MarkerVisibilityclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.RouteTrafficIncidentStyle.TrafficIncidentCategoryKeyclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.TrafficIncidentCategoryclass and all memberscom.tomtom.sdk.map.display.visualization.routing.traffic.TrafficVisualization.addTrafficIncidentClickedListener(TrafficIncidentClickedListener)com.tomtom.sdk.map.display.visualization.routing.traffic.TrafficVisualization.removeTrafficIncidentClickedListener(TrafficIncidentClickedListener)com.tomtom.sdk.map.display.visualization.search.SearchVisualization.kt.toPoiLocation(SearchResult):PoiLocation
Fixes
-
Adjust alternative route time difference marker visibility.
-
An optimization was made that prevents complex geometric calculations when no safety zones are present during a lane level scenario.
-
Avoid printing api key in map data store logs.
-
Compose: avoid race condition in camera tracking mode updates.
-
Ensure exception is handled when style fetching is canceled during map closure. This prevents from application spontaneous shutdown.
-
Fix a crash in
MichiMapLifecycleClientwhen a function was called after the object was closed. -
Fix Application Not Responding (ANA) when changing device theme or disconnecting from Android Auto.
-
Fix blinking instruction arrow during route update.
-
Fix crash when invalid fork point for better.
route is taken that would result in route with less than 2 points.
-
Fix dark sprites being used when main style is loaded.
-
Fix flickering hazard icons.
-
Fix for uncaught InterruptedIOException in MapDataStoreUriHandler.
-
Fix issue with showing ETA after route update of active route.
-
Fix Lane Level Guidance crash.
-
Fix missing ID in GeoJSON polyline and polygon.
-
Fix ranking issue on Poi Visualization.
-
Fix the crash when removing the destination connection line twice.
-
Fix the remaining destination connection line when re-planning a route with
com.tomtom.sdk.map.display.visualization.routing.RoutingVisualization.displayRoutePlanmethod. -
Map gesture no longer result in ANR.
-
Move the construction of gRPC messages off the main thread.
-
No longer force top-down view on browsing camera activation.
-
Prevent Application Not Responding when telemetry for Maps SDK is enabled.
-
Prevent excessive thread locking in LocalObjectSpawner and improve forced crash sentry reports.
-
Reduce frequency of prefetching requests on MapDataStoreConnector.
-
The transition to 3d driving mode is more consistent and takes no longer than 5 seconds.
-
Update alternative routes color.
Deprecations
- Deprecate
com.tomtom.sdk.map.display.dataprovider.hybrid.TileHybridDataProviderFactory. - Deprecate
com.tomtom.sdk.map.display.mapdatastore.hybrid.HybridMapDataStore. - Deprecate
com.tomtom.sdk.map.display.mapdatastore.hybrid.HybridMapDataStoreConfiguration. - Deprecate
com.tomtom.sdk.map.display.mapdatastore.hybrid.HybridMapDataStoreController. - Deprecate
com.tomtom.sdk.map.display.mapdatastore.hybrid.HybridMapDataStoreFactory.
Navigation
Breaking changes
-
Reorganize navigation modules.
The following modules were relocated with no changes in functionality:
com.tomom.sdk.navigation:navigation-data-store-maintenance-engine-default->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-data-store-selection-engine-default->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-engines->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-horizon-engine-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-horizon-engine-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-horizon-engine-smoke-tests->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-horizon-engine-unified->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-horizon-test-internal->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-junction-view-engine->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-lane-path-generator-engine-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-lane-path-generator-engine-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-lane-path-generator-engine-tilestore->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-engine-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-engine-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-engine-offline->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-engine-tilestore->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-engine-unified->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-map-matching-test-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-offline->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-offroad->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-online->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-resume-snapshot-renewer->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-engine-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-engine-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-engine-offline->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-engine-tilestore->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-engine-unified->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-projection-test-internal->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner-common->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner-default->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner-hybrid->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner-offline->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-route-replanner-online->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-snapshot->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-telemetry->com.tomtom.sdk.navigation:navigationcom.tomom.sdk.navigation:navigation-verbal-message-generation->com.tomtom.sdk.navigation:navigation
-
Reorganize navigation-ui modules.
The following modules were relocated:
com.tomtom.sdk.navigation:service->com.tomtom.sdk.navigation:ui
The
com.tomtom.sdk.navigation:uinow requires additional permissions:android.permission.FOREGROUND_SERVICEandroid.permission.POST_NOTIFICATIONS
New features
- Add dynamic route update interval trigger logic.
Updates
-
Move HybridRouteReplanner to navigation:navigation module.
-
Route replanning is triggered without delay during deviation. The user-provided ReplanningRetryPolicy will not be applied in this situation.
-
The following APIs are promoted to GA:
com.tomtom.sdk.hazards.common.HazardsConfigurationclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformationclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.BadRoadConditionsclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.JamTailclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.ObjectsOnRoadclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.ReducedVisibilityclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.RoadWorksclass and all memberscom.tomtom.sdk.hazards.model.DetailedHazardInformation.StrongWindclass and all memberscom.tomtom.sdk.hazards.model.Hazardclass and all memberscom.tomtom.sdk.hazards.model.HazardCategoryclass and all memberscom.tomtom.sdk.hazards.model.HazardIdclass and all memberscom.tomtom.sdk.hazards.model.HazardLocationclass and all memberscom.tomtom.sdk.hazards.model.HazardLocation.Areaclass and all memberscom.tomtom.sdk.hazards.model.HazardLocation.Linearclass and all memberscom.tomtom.sdk.hazards.model.HazardLocation.Spotclass and all memberscom.tomtom.sdk.hazards.model.HazardSeverityclass and all memberscom.tomtom.sdk.hazards.model.HazardTypeclass and all memberscom.tomtom.sdk.navigation.HorizonUpdatedListener.onHorizonReset(HorizonOptions)com.tomtom.sdk.navigation.NavigationEngineRegistryclass and all memberscom.tomtom.sdk.navigation.NavigationSnapshotExtensions.kt.currentActiveRoutePlanningOptions:RoutePlanningOptionscom.tomtom.sdk.navigation.RouteAddedReason.Invalidatedclass and all memberscom.tomtom.sdk.navigation.RouteAddedReason.NavigationResumedclass and all memberscom.tomtom.sdk.navigation.RoutePlanningOptionsExtensions.kt.addItineraryPoint(RoutePlanningOptions,ItineraryPoint):RoutePlanningOptionscom.tomtom.sdk.navigation.RoutePlanningOptionsExtensions.kt.addItineraryPoint(RoutePlanningOptions,ItineraryPoint,ItineraryPoint):RoutePlanningOptionscom.tomtom.sdk.navigation.RoutePlanningOptionsExtensions.kt.removeItineraryPoint(RoutePlanningOptions,ItineraryPoint):RoutePlanningOptionscom.tomtom.sdk.navigation.RoutePlanningOptionsExtensions.kt.skipRouteStop(RoutePlanningOptions,RouteStop):RoutePlanningOptionscom.tomtom.sdk.navigation.TomTomNavigation.navigationEngineRegistry:NavigationEngineRegistrycom.tomtom.sdk.navigation.TomTomNavigation.navigationResumeSnapshot():Result<NavigationResumeSnapshot,NavigationResumeSnapshotFailure>com.tomtom.sdk.navigation.TomTomNavigation.resume(NavigationResumeSnapshot)com.tomtom.sdk.navigation.arrival.ArrivalDetectionEngineclass and all memberscom.tomtom.sdk.navigation.datastoremaintenance.DataStoreMaintenanceEngineclass and all memberscom.tomtom.sdk.navigation.datastoreselection.DataSourceSelectionclass and all memberscom.tomtom.sdk.navigation.datastoreselection.NavigationDataSourceclass and all memberscom.tomtom.sdk.navigation.guidance.AnnouncementModeclass and all memberscom.tomtom.sdk.navigation.guidance.GuidanceEngineclass and all memberscom.tomtom.sdk.navigation.guidance.GuidanceEngineFactoryobject and all memberscom.tomtom.sdk.navigation.guidance.GuidanceEngineOptionsclass and all memberscom.tomtom.sdk.navigation.guidance.LaneGuidanceUpdateclass and all memberscom.tomtom.sdk.navigation.guidance.LaneGuidanceUpdateTypeclass and all memberscom.tomtom.sdk.navigation.guidance.instruction.Signpost(String=,String=,String=,IconReference?=)com.tomtom.sdk.navigation.guidance.instruction.Signpost.exitIconReferencecom.tomtom.sdk.navigation.horizon.HorizonEngineclass and all memberscom.tomtom.sdk.navigation.horizon.HorizonSnapshotState.resetCounter:Intcom.tomtom.sdk.navigation.horizon.elements.hazard.HazardElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.hazard.HazardElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.lowemissionzone.LowEmissionZoneElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.lowemissionzone.LowEmissionZoneElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.poi.PoiElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.poi.PoiElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.railwaycrossing.RailwayCrossingElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.railwaycrossing.RailwayCrossingElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.traffic.TrafficEventElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.traffic.TrafficEventElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficlight.TrafficLightElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficlight.TrafficLightElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficsign.TrafficSignCategoryclass and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficsign.TrafficSignElementclass and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficsign.TrafficSignElementTypeobject and all memberscom.tomtom.sdk.navigation.horizon.elements.trafficsign.TrafficSignLocationclass and all memberscom.tomtom.sdk.navigation.mapmatching.MapMatchingEngineclass and all memberscom.tomtom.sdk.navigation.mapmatching.MapMatchingResult(MatchedLocation,GeoLocation,List<GeoLocation>=,List<MatchedLocation>=,List<RouteId>=)com.tomtom.sdk.navigation.mapmatching.MapMatchingResult.locationPredictions:List<GeoLocation>com.tomtom.sdk.navigation.mapmatching.offline.OfflineMapMatchingEngineFactoryobject and all memberscom.tomtom.sdk.navigation.mapmatching.tilestore.TileStoreMapMatchingEngineFactoryobject and all memberscom.tomtom.sdk.navigation.navigationresumesnapshot.NavigationResumeSnapshotclass and all memberscom.tomtom.sdk.navigation.navigationresumesnapshot.NavigationResumeSnapshotFailureclass and all memberscom.tomtom.sdk.navigation.navigationresumesnapshot.NavigationResumeSnapshotFailure.NoActiveRouteFailureclass and all memberscom.tomtom.sdk.navigation.navigationresumesnapshot.NavigationResumeSnapshotSerializationFailureclass and all memberscom.tomtom.sdk.navigation.offline.Configuration(Context,NdsStore,NdsMapUpdater?=,LocationProvider,RoutePlanner?=,VehicleProvider=,BetterProposalAcceptanceMode=,DeviationReplanningMode=,ReplanningRetryPolicy=,RouteReplanningEngine?=,DataStoreMaintenanceEngine?=,GuidanceEngine?=,HorizonEngine?=,MapMatchingEngine?=,RouteTrackingEngine?=,RouteProgressEngine?=,ArrivalDetectionEngine?=,SafetyLocationsConfiguration?=,HazardsConfiguration?=,Traffic?=)com.tomtom.sdk.navigation.online.Configuration(Context,NavigationTileStore,LocationProvider,RoutePlanner?=,VehicleProvider=,BetterProposalAcceptanceMode=,DeviationReplanningMode=,ReplanningRetryPolicy=,RouteReplanningEngine?=,DataStoreMaintenanceEngine?=,GuidanceEngine?=,HorizonEngine?=,MapMatchingEngine?=,RouteTrackingEngine?=,RouteProgressEngine?=,ArrivalDetectionEngine?=,SafetyLocationsConfiguration?=,HazardsConfiguration?=,Traffic?=)com.tomtom.sdk.navigation.progress.RouteProgressEngineclass and all memberscom.tomtom.sdk.navigation.replanning.ReplannedRouteclass and all memberscom.tomtom.sdk.navigation.replanning.RouteProposalSelectorclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineFactoryobject and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineFailure.ReplanningFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineFailure.UnsupportedReplanningFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningEngineOptionsclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningFailure.RouteMergingFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningFailure.RoutePlanningFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningFailure.RouteValidationFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningFailure.UnsupportedRouteReplanningFailureclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReasonclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.BetterFoundclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.Blockageclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.Deviationclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.Incrementclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.Invalidatedclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.LanguageChangeclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.OutOfRangeclass and all memberscom.tomtom.sdk.navigation.replanning.RouteReplanningReason.Refreshclass and all memberscom.tomtom.sdk.navigation.replanning.RouteUpdateModeclass and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerclass and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerFactoryobject and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerFailureclass and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerFailure.NoNavigationResumeSnapshotFailureclass and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerFailure.PersistenceFailureclass and all memberscom.tomtom.sdk.navigation.resumesnapshotrenewer.NavigationResumeSnapshotRenewerOptionsclass and all memberscom.tomtom.sdk.navigation.routecomparison.SectionsDifferenceclass and all memberscom.tomtom.sdk.navigation.routereplanner.RouteReplannerclass and all memberscom.tomtom.sdk.navigation.routereplanner.RouteReplannerConfigurationclass and all memberscom.tomtom.sdk.navigation.routereplanner.RouteReplannerResponseclass and all memberscom.tomtom.sdk.navigation.routereplanner.offline.OfflineRouteReplannerFactoryobject and all memberscom.tomtom.sdk.navigation.routereplanner.online.OnlineRouteReplannerFactoryobject and all memberscom.tomtom.sdk.navigation.tracking.RouteTrackingEngineclass and all memberscom.tomtom.sdk.navigation.tracking.RouteTrackingEngineFactoryobject and all members
-
Throw
IllegalArgumentExceptioninstead ofExceptionwhen the native NDS.Live map instance detects configuration issues. -
Trim all horizon elements endOffset to geometry max endOffset.
Fixes
-
Add checks for constraints when setting
NavigationTileStoreConfigvalues after instance creation. -
Align NDA tiles implementation with documentation backport.
-
Audio announcement language now considers region.
-
Backport fix for native safety location performance.
-
Change the route so that it no longer includes the missing tile.
-
Correct map matching and speed limit issues observed in some online modes.
-
Correctly display if a road has controlled access.
-
Correctly show if road is a toll road (online map access).
-
During a Software Dead Reckoning (SoftDR) situation, the location context will no longer exposes speed; it now returns a speed of zero.
-
Each road shield icon generation now uses a different surface instance to prevent native crash from the Android canvas.
-
Fix possibility of a loop of data source switching during free driving in hybrid navigation.
-
Fix replanning on deviation from imported.
routes, when running multiple navigation sessions with the same navigation instance.
-
Fix rerouting when a user departed off-road from a waypoint.
-
Fix runtime error in case of NDS.Live cache corruption.
-
Fix simple lane guidance missing issue when lane section has a short length.
-
In Hybrid mode after deviation on online route, select most similar route if it is path alternative.
-
Progress updates are now not stored in the session when a waypoint is skipped over.
-
Provide a configuration for the SDK user to input their locale.
-
Resolve an
IllegalStateExceptioninNavUiViewModelthat occurred whenGuidanceUpdatedListenerwas invoked after it had been removed from TomTomNavigation. This fix enhances stability and prevents unexpected crashes during navigation updates. -
Resolved an issue that could prevent route updates from loading correctly when starting navigation while stationary.
-
The remaining distance for back-to-route check is now considered instead of the route's total length.
-
The system no longer crashes during route refresh intake if the active route was replaced. Navigation now continues seamlessly with the existing route, and proper telemetry (RouteRejectedReason.NO_MATCHING_ROUTE_AVAILABLE) is sent when this occurs.
-
Traffic jam spoken warning delays are now rounded down (floored) to whole minutes. A delay of 1m45s will be rounded to 1m.
-
Traffic jams with a duration of less than 1 minute are no longer announced with a warning.
-
Updates on
com.tomtom.sdk.navigation.TomTomNavigation.preferredLanguageare now also used for traffic information. -
Use new vehicle data in
plannedWithwhen a route is updated. -
Use same location prediction for all routes in progress calculation.
Deprecations
-
Deprecate
com.tomtom.sdk.datamanagement.datastore.ActiveRouteUpdatableinterface. -
Deprecate
com.tomtom.sdk.datamanagement.datastore.PositionUpdatableinterface. -
Deprecate
com.tomtom.sdk.datamanagement.datastore.UpdatableDataStoreinterface. -
Deprecate
com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore.updateActiveRoute(List<GeoPoint>). -
Deprecate
com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStore.updatePosition(GeoPoint). -
Deprecate
com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore.updateActiveRoute(List<GeoPoint>). -
Deprecate
com.tomtom.sdk.datamanagement.navigationtile.NavigationTileStore.updatePosition(GeoPoint). -
Deprecate
com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdater.updateActiveRoute(List<GeoPoint>). -
Deprecate
com.tomtom.sdk.datamanagement.nds.update.NdsStoreUpdater.updatePosition(GeoPoint). -
Deprecate the
com.tomtom.sdk.datamanagement.datasource.DataSourceclass. -
Deprecate the
com.tomtom.sdk.datamanagement.datasource.DataSourceChangedListener. -
Deprecate the
com.tomtom.sdk.datamanagement.datasource.DataSourceChangedNotifierclass. -
Deprecate the
com.tomtom.sdk.datamanagement.datastore.StoreAccessclass. -
Deprecate the
com.tomtom.sdk.datamanagement.datastore.StoreAccessProviderinterface. -
Deprecate the
com.tomtom.sdk.datamanagement.hybridnavigationdata.DataStoreUpdateModeclass. -
Deprecate the
com.tomtom.sdk.datamanagement.hybridnavigationdata.HybridNavigationDataStoreclass. -
Deprecate the
com.tomtom.sdk.navigation.datastoreselection.DefaultDataStoreSelectionEngineFactory. -
Deprecate the
com.tomtom.sdk.navigation.hybrid.Configuration. -
Deprecate the
com.tomtom.sdk.navigation.hybrid.HybridRouteReplannerFactoryExtension.createOnlineFirstextension function. -
Deprecate the
com.tomtom.sdk.navigation.hybrid.HybridTomTomNavigationFactory.createOnlineFirstmethod. -
Deprecate the
com.tomtom.sdk.navigation.hybrid.HybridTomTomNavigationFactory. -
Deprecate the
com.tomtom.sdk.navigation.mapmatching.hybrid.HybridMapMatchingEngineFactoryobject. -
Deprecate the
com.tomtom.sdk.navigation.routereplanner.hybrid.HybridRouteReplannerFactory. -
Deprecated the
com.tomtom.sdk.navigation.horizon.RouteLengthPolicyconstructor. Usecom.tomtom.sdk.navigation.horizon.ExplicitDistancePolicy(PathSearchDistance=) instead. -
Deprecates constructors
com.tomtom.sdk.navigation.horizon.HorizonSnapshotState(Int=)andcom.tomtom.sdk.navigation.horizon.HorizonSnapshotState(Int=, Int=). Deprecatecom.tomtom.sdk.navigation.horizon.HorizonSnapshotState.updateCounter. -
The following APIs are deprecated:
com.tomtom.sdk.navigation.offroad.Configurationclass and all memberscom.tomtom.sdk.navigation.offroad.OffRoadTomTomNavigationFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.arrival.OffRoadArrivalDetectionEngineFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.guidance.OffRoadGuidanceEngineFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.mapmatching.OffRoadMapMatchingEngineFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.progress.OffRoadRouteProgressEngineFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.routereplanner.OffRoadRouteReplannerFactoryobject and all memberscom.tomtom.sdk.navigation.offroad.tracking.OffRoadRouteTrackingEngineFactoryobject and all members
Personalization
Breaking changes
-
Reorganized personal data modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.personaldata:personal-data-api->com.tomtom.sdk.personaldata:personal-data-common
Updates
-
The following API classes and all members are promoted to GA:
com.tomtom.sdk.personaldata.DestinationProposalcom.tomtom.sdk.personaldata.PersonalDatacom.tomtom.sdk.personaldata.PersonalLocationcom.tomtom.sdk.personaldata.Proposalscom.tomtom.sdk.personaldata.UserLocationscom.tomtom.sdk.personaldata.UserProfilecom.tomtom.sdk.personaldata.UserProfileCallbackcom.tomtom.sdk.personaldata.UserProfileClearedCallbackcom.tomtom.sdk.personaldata.UserProfileFailurecom.tomtom.sdk.personaldata.UserProfileFailure.ClearProfileFailurecom.tomtom.sdk.personaldata.UserProfileFailure.LoadProfileFailurecom.tomtom.sdk.personaldata.UserProfileFailure.UpdateProfileFailurecom.tomtom.sdk.personaldata.UserProfileUpdatedListener
Fixes
- Creating personal data in the same directory after closing it will not cause a crash.
- The favorite personal location is correctly removed after being added from a recent destination.
Routing
Breaking changes
-
Reorganize routing modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.routing.range:range-calculator->com.tomtom.sdk:routing:routing-commoncom.tomtom.sdk.routing:common->com.tomtom.sdk.routing:routing-commoncom.tomtom.sdk.routing:model->com.tomtom.sdk.routing:routing-commoncom.tomtom.sdk.routing:route-planner->com.tomtom.sdk.routing:routing-commoncom.tomtom.sdk.routing:route-planner-api-coroutines->com.tomtom.sdk.routing:routing-commoncom.tomtom.sdk.routing:range-calculator-offline->com.tomtom.sdk:routing:range-calculatorcom.tomtom.sdk.routing:range-calculator-online->com.tomtom.sdk:routing:range-calculatorcom.tomtom.sdk.routing:route-planner-hybrid->com.tomtom.sdk:routing:route-plannercom.tomtom.sdk.routing:route-planner-offline->com.tomtom.sdk:routing:route-plannercom.tomtom.sdk.routing:route-planner-online->com.tomtom.sdk:routing:route-planner
New features
- Add new RoutePlanningOptions2 APIs.
- Introduce online-first
RoutePlanner. - Road numbers are no longer used in voice messages.
- You can now use new route planner failure types as part of BetaRoutingNetworkFailureApi.
Updates
-
Charging parameters are now validated during construction instead of failing later during routing.
-
Deprecate departureTimeWithZone and arrivalTimeWithZone in route summary.
-
Itinerary is now a class (not data class) with generated data class methods deprecated.
-
Pass route points per-leg instead of raw polyline to the engine;
-
Promote
com.tomtom.sdk.routing.options.calculation.ReconstructionModeto GA. -
Promote
PlanningTimeto GA. -
Replaced raw polyline with per-leg route points and removed dependencies on consumption annotations.
-
The following APIs are promoted to GA:
com.tomtom.sdk.routing.range.offline.OfflineRangeCalculatorFactoryobject and all memberscom.tomtom.sdk.routing.ComputationSourceclass and all memberscom.tomtom.sdk.routing.ComputationSource.Cacheclass and all memberscom.tomtom.sdk.routing.ComputationSource.Offlineclass and all memberscom.tomtom.sdk.routing.ComputationSource.Onlineclass and all memberscom.tomtom.sdk.routing.RouteDataFailureclass and all memberscom.tomtom.sdk.routing.RouteDataFailure.InvalidDataclass and all memberscom.tomtom.sdk.routing.RouteDataFailure.NoConsumptionclass and all memberscom.tomtom.sdk.routing.RouteDataFailure.NoRoutePointsclass and all memberscom.tomtom.sdk.routing.RouteDataFailure.OutOfBoundsclass and all memberscom.tomtom.sdk.routing.RouteDataFailure.WrongArgumentTypeclass and all members
Fixes
- Avoid crash if iChargingPark is empty for AutoGeneratedStop in CollectRequiredWaypoints function.
- Create new NDA native client for every routing request.
- Fix
mapMatchedTrafficEventstartTime/stopTime. - Fix crash in AUI NavSDK related to incorrect handling of offroad waypoints in LDEV route updates.
- FlakyOnlineRoutePlannerCollaborationTestMotorcycle fix.
- ManeuverGeometry is recovered after back to route.
- Pass heading to all engine request types.
- Remove road details from verbal "Follow the road..." audio announcements.
Deprecations
- Deprecate
HybridRoutePlanner.createandExecutionPolicy. - Deprecate data class fields of
ChargingConnectorandChargingParameters. - Fix incorrect replacement suggestion for a deprecated field.
Search
Breaking changes
-
Reorganize search modules.
The following artifacts were relocated with no changes in functionality:
com.tomtom.sdk.search:reverse-geocoder->com.tomtom.sdk.search:search-commoncom.tomtom.sdk.search:dynamic-data->com.tomtom.sdk.search:search-commoncom.tomtom.sdk.search:search->com.tomtom.sdk.search:search-commoncom.tomtom.sdk.search:structured-search->com.tomtom.sdk.search:search-commoncom.tomtom.sdk.search:search-online->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:search-offline->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:search-hybrid->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:structured-search-offline->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:dynamic-data-online->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:search-custom-data-online->com.tomtom.sdk.search:searchcom.tomtom.sdk.search:reverse-geocoder-online->com.tomtom.sdk.search:reverse-geocodercom.tomtom.sdk.search:reverse-geocoder-offline->com.tomtom.sdk.search:reverse-geocodercom.tomtom.sdk.search:reverse-geocoder-hybrid->com.tomtom.sdk.search:reverse-geocoder
Updates
-
The following APIs are promoted to GA:
com.tomtom.sdk.search.customdata.CustomPoiclass and all memberscom.tomtom.sdk.search.customdata.CustomPoiProviderclass and all memberscom.tomtom.sdk.search.dynamicdata.EvChargingAvailabilityProviderclass and all memberscom.tomtom.sdk.search.dynamicdata.ParkingDetailProvider.requestParkingPrice(ParkingPriceOptions):Result<ParkingPriceResponse,SearchFailure>com.tomtom.sdk.search.dynamicdata.ParkingDetailProvider.requestParkingPrice(ParkingPriceOptions,ParkingPriceCallback):Cancellablecom.tomtom.sdk.search.dynamicdata.ev.EvChargingAvailabilityCallbackclass and all memberscom.tomtom.sdk.search.dynamicdata.ev.EvChargingAvailabilityOptionsclass and all memberscom.tomtom.sdk.search.dynamicdata.ev.EvChargingAvailabilityResponseclass and all memberscom.tomtom.sdk.search.dynamicdata.model.ev.Availabilityclass and all memberscom.tomtom.sdk.search.dynamicdata.model.ev.ConnectorAvailabilityclass and all memberscom.tomtom.sdk.search.dynamicdata.model.ev.ConnectorAvailabilityDetailsclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.Feeclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.FuzzyDurationclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.ParkingDurationclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.PaymentDetailsclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.PaymentMethodclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.PaymentTypeclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.Priceclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.Rateclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.RateClassifierclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.RateDetailsclass and all memberscom.tomtom.sdk.search.dynamicdata.model.parking.price.Ticketclass and all memberscom.tomtom.sdk.search.dynamicdata.parking.price.ParkingPriceCallbackclass and all memberscom.tomtom.sdk.search.dynamicdata.parking.price.ParkingPriceOptionsclass and all memberscom.tomtom.sdk.search.dynamicdata.parking.price.ParkingPriceResponseclass and all memberscom.tomtom.sdk.search.dynamicdata.online.OnlineDynamicDataProviderFactory.createEvChargingAvailabilityProvider(Context,String):EvChargingAvailabilityProvidercom.tomtom.sdk.search.dynamicdata.online.OnlineDynamicDataProviderFactory.createParkingDetailProvider(Context,String):ParkingDetailProvidercom.tomtom.sdk.search.offline.OfflineSearch.Companion.create(NdsStore,List<CustomPoiProvider>,PersonalData):Searchcom.tomtom.sdk.search.offline.OfflineSearch.Companion.create(NdsStore,List<CustomPoiProvider>?=):Searchcom.tomtom.sdk.search.online.custompoi.OnlineWithCustomPoiSearch.kt.create(OnlineSearch.Companion,Context,String,List<CustomPoiProvider>,URL?=,String?=):Search
Fixes
-
neighborhoodNameandpostalNameincom.tomtom.sdk.location.Addressare now populated correctly from online search responses. -
Charging stations now correctly display Plug and Charge capability.
-
Fix crash in reverse geocoder on server disconnect.
The crash occurred due to a
SocketTimeoutExceptionwhen acquiring GPS fix. This has been addressed by improving exception mapping for network failures and adding robust error handling during response deserialization. -
Fix deserialization of
EvByIdcall when no results are available. -
Fix failure when
com.tomtom.sdk.location.poi.ev.AccessType.Companyis passed incom.tomtom.sdk.search.ev.EvSearchOptions. -
Fix Filtering by CPOs and EMSPs.
-
Improve HybridReverseGeocoder and HybridSearch behavior for offline scenarios.
This update ensures that the
HybridCoordinatornow immediately returns offline results upon detecting no network connectivity, eliminating unnecessary delays during offline operations -
Online EV Search now uses stable eMSP identifiers for filtering.
-
Online reverse geocoder is cancelled promptly with timeout leading to faster response time in case of a timeout.
-
Prevent ANR in HybridReverseGeocoder by using.
dedicated IO dispatcher for offline engine callback and not using main thread.
-
Prevent crash when reading truncated or corrupted gzipped HTTP response bodies during online search. The SDK now handles these I/O errors gracefully by returning
com.tomtom.sdk.search.common.error.SearchFailure.NetworkFailureorcom.tomtom.sdk.search.common.error.SearchFailure.HttpFailureinstead of crashing.
Deprecations
- Deprecate
com.tomtom.sdk.search.hybrid.HybridSearch. - Deprecate
com.tomtom.sdk.search.reversegeocoder.hybrid.HybridReverseGeocoder.
Telemetry
Updates
-
The following APIs are promoted to GA:
com.tomtom.sdk.telemetry.RestrictedTelemetryConfigProviderclass and all memberscom.tomtom.sdk.telemetry.Consentclass and all memberscom.tomtom.sdk.telemetry.DefaultTelemetryConfigProviderclass and all memberscom.tomtom.sdk.telemetry.Telemetryobject and all memberscom.tomtom.sdk.telemetry.TelemetryConfigProviderclass and all members
Traffic
Breaking changes
-
Reorganize traffic modules.
The following modules were relocated with no changes in functionality:
com.tomtom.sdk.traffic:client->com.tomtom.sdk.traffic:traffic-clientcom.tomtom.sdk.traffic:traffic-client-api->com.tomtom.sdk.traffic:traffic-commoncom.tomtom.sdk.traffic:model->com.tomtom.sdk.traffic:traffic-common
Updates
-
The following API classes and all their members are promoted to GA:
com.tomtom.sdk.traffic.Categorycom.tomtom.sdk.traffic.Causecom.tomtom.sdk.traffic.CauseCodecom.tomtom.sdk.traffic.EffectCodecom.tomtom.sdk.traffic.RoadClasscom.tomtom.sdk.traffic.RoadSubClasscom.tomtom.sdk.traffic.RoadTypecom.tomtom.sdk.traffic.Trafficcom.tomtom.sdk.traffic.TrafficChangedListenercom.tomtom.sdk.traffic.TrafficErrorcom.tomtom.sdk.traffic.TrafficEventcom.tomtom.sdk.traffic.TrafficEventsCallbackcom.tomtom.sdk.traffic.TrafficEventsResultcom.tomtom.sdk.traffic.WarningLevel
Fixes
- Handle MapVersionMismatchError exception during traffic events decoding.
- Route update in the traffic client component is no longer executed on the main thread.
Deprecations
-
Deprecate the
com.tomtom.sdk.traffic.client.TrafficClientFactory.createHybridModemethod. -
The following API is deprecated:
com.tomtom.sdk.traffic.client.TrafficTpegConfigurationclass and all members
Vehicle
Breaking changes
-
Reorganize vehicle modules.
The following artifacts were renamed with no changes in functionality:
com.tomtom.sdk.vehicle:model->com.tomtom.sdk.vehicle:vehicle-common
Deprecations
com.tomtom.sdk.vehicle.ChargeLevelhas been changed from a data class to a regular class. As a result,component1(),component2()andcopy(), are now deprecated.