Release Notes
Version 0.44.0 - 15/01/2024
General
Breaking changes
com.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdandcom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionIdare notvalue classanymore. Incom.tomtom.sdk.datamanagement.nds.update.MapOperationusecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdfor thenodeIdvariable. In packagecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeusecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdfor theid. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionusecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdfor theid. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionOperationusecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdfor theid. Incom.tomtom.sdk.datamanagement.nds.update.compositeregion.CompositeRegionsUpdater.findCompositeRegionsusecom.tomtom.sdk.datamanagement.nds.update.RegionGraphNodeIdfor theregionGraphNodeIdvariable.- 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.OnlineHazardsandcom.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
PolygonOptionsfrom data class to normal class. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint.fovtocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPoint.fieldOfView. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFovtocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.defaultFieldOfView. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoomtocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoom. - Renamed
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.showCombinedInstructionMaxZoomChangetocom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.combinedInstructionMaxZoomChange. - Renamed the
fovparameter incom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfig.ControlPointinitializer to fieldOfView. - Renamed the
fovparameter incom.tomtom.sdk.map.display.camera.FollowCameraOperatorConfiginitializer 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.FollowDirectionis now available in General Availability. - Class
com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowNorthUpis now available in General Availability. - Class
com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRouteDirectionis now available in General Availability. - Class
com.tomtom.sdk.map.display.camera.CameraTrackingMode.FollowRouteNorthUpis now available in General Availability. - Class
com.tomtom.sdk.map.display.camera.FollowCameraOperatorConfigis now available in General Availability. - Class
com.tomtom.sdk.map.display.polygon.Polygonis now available in General Availability. - Class
com.tomtom.sdk.map.display.polygon.PolygonClickListeneris now available in General Availability. - Class
com.tomtom.sdk.map.display.polygon.PolygonControlleris now available in General Availability. - Class
com.tomtom.sdk.map.display.polygon.PolygonNotFoundExceptionis now available in General Availability. - Class
com.tomtom.sdk.map.display.polygon.PolygonOptionsis now available in General Availability. - Promote
POIVisualizationandSearchVisualizationto PP.
Navigation
Breaking changes
OfflineTomTomNavigationFactoryconfiguration properties are now internal.OffRoadTomTomNavigationconfiguration properties are now internal.- Add
com.tomtom.sdk.datamanagement:nds-store-updaterfor the dependency setup in the gradle files. - Added
showBetterRouteProposalPanelflag tocom.tomtom.sdk.navigation.ui.NavigationUiOptionsin order to be able to enable/disable the better route proposal panel. - Constructor for
com.tomtom.sdk.navigation.LocationSnapshotis no longer part of public API. - HybridTomTomNavigationFactory configuration properties are now internal.
- Make
com.tomtom.sdk.datamanagement.locationdecoder.LocationDecoderinterface internal. - Make
com.tomtom.sdk.navigation.DrivingHistorySnapshotconstructor SDK internal. - Move
NdsStoreUpdaterto the new moduleonboard-nds-store-updater. - Prepare
MapMatchingResultAPI to promotion. - Remove
com.tomtom.sdk.datamanagement.nds.InvalidListenerExceptionand use IllegalArgumentException instead. - Remove
routeReplannerfromConfigurationofHybridTomTomNavigationFactory. Either provideonlinePlannerandofflinePlanner, or create aRouteReplanningEnginewith your own re-planner viaRouteReplanningEngineFactory.create(routeReplanner). - Remove
SystemClockTimeProviderfrom the public API. - Remove data class modifier from
com.tomtom.sdk.navigation.LocationSnapshot. - Rename
com.tomtom.sdk.datamanagement.nds.OnStoreAccessChangedListenertoStoreAccessChangedListener. - Renamed
com.tomtom.sdk.navigation.progress.RouteProgress.remainingWaypointsProgresstoremainingRouteStopsProgress. - The interfaces
com.tomtom.sdk.datamanagement.datastore.UpdatableDataStore,com.tomtom.sdk.datamanagement.datastore.PositionUpdatable, andcom.tomtom.sdk.datamanagement.datastore.ActiveRouteUpdatableare 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.remainingRouteStopsProgresscontains only route stops whose offset is smaller than the distance along the route.
Updates
com.tomtom.sdk.datamanagement.nds.NdsStoreAccessSyncis now available in General Availability.com.tomtom.sdk.navigation.ConfigurationSnapshotis now available in General Availability.com.tomtom.sdk.navigation.LocationSnapshotis now available in General Availability.OnlineTomTomNavigationFactoryconfiguration 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.MapIsNotAccessibleFailureis now available in General Availability. - Class
com.tomtom.sdk.datamanagement.nds.NdsStoreFailureis 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
RouteStopProgressadded tocom.tomtom.sdk.navigation.progress.RouteProgress.remainingRouteStopsProgress. - Improve the Telemetry configuration guide.
- Promote
com.tomtom.sdk.navigation.TomTomNavigation.setActiveRoutePlanto General Availability. - Update the wrong documentation about navigation on an imported route.
- Warnings about NDS.Live-only NavigationTileStore parameters.
Routing
Breaking changes
- Make
OfflineRangeCalculatorinternal.
Updates
- Class
com.tomtom.sdk.routing.options.RangeCalculationOptionsis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Budget.Distanceis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Budget.Energyis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Budget.Fuelis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Budget.Timeis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Budgetis now available in General Availability. - Class
com.tomtom.sdk.routing.range.Rangeis now available in General Availability. - Class
com.tomtom.sdk.routing.range.RangeBoundaryis 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
requestGeometryDatafor 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
IllegalStateExceptionwhen using a hybrid reverse geocoder after closing it. - Throw an IllegalStateException when calling reverseGeocode after calling close in the offline reverse geocoder.
Updates
- Cancel
CoroutineScopeinOfflineSearch. - Cancel
CoroutineScopeinOnlineWithCustomPoiSearch. - 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.