Release Notes

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.

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.