Release Notes
Version 0.44.0 - 15/01/2024
General
Breaking changes
com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
andcom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionId
are notvalue class
anymore. Incom.tomtom.sdk.datamanagement.nds.update.MapOperation
usecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
for thenodeId
variable. In packagecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNode
usecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
for theid
. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegion
usecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
for theid
. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionOperation
usecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
for theid
. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionsUpdater.findCompositeRegions
usecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeId
for theregionGraphNodeId
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
andcom.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
tocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint.fieldOfView
. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFov
tocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFieldOfView
. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoom
tocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoom
. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoomChange
tocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoomChange
. - Renamed the
fov
parameter incom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint
initializer to fieldOfView. - Renamed the
fov
parameter incom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig
initializer tofieldOfView
.
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
andSearchVisualization
to PP.
Navigation
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 tocom.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 moduleonboard-nds-store-updater
. - Prepare
MapMatchingResult
API to promotion. - Remove
com.tomtom.sdk.datamanagement.nds.InvalidListenerException
and use IllegalArgumentException instead. - Remove
routeReplanner
fromConfiguration
ofHybridTomTomNavigationFactory
. Either provideonlinePlanner
andofflinePlanner
, or create aRouteReplanningEngine
with your own re-planner viaRouteReplanningEngineFactory.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
toStoreAccessChangedListener
. - Renamed
com.tomtom.sdk.navigation.progress.RouteProgress.remainingWaypointsProgress
toremainingRouteStopsProgress
. - The interfaces
com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore
,com.tomtom.sdk.datamanagement.datastore.PositionUpdatable
, andcom.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 tocom.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
inOfflineSearch
. - Cancel
CoroutineScope
inOnlineWithCustomPoiSearch
. - 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.