Release Notes
Version 0.52.0 - 21/06/2024
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.
For more in-depth documentation, check the API ReferenceGeneral
Breaking changes
TomTomSDKRoutingVisualization.TrafficVisualizationnow conforms toTomTomSDKCommon.ConformanceLocked. Remove all conformances outside NavSDK asTomTomSDKRoutingVisualization.TrafficVisualizationisn’t intended for external implementation.- Rename
TomTomSDKRoutingVisualization.RoutingVisualization.zoomToRoutesEnabledtoTomTomSDKRoutingVisualization.RoutingVisualization.isZoomToRoutesEnabled.
Updates
-
Optimize feature toggle data loading from file.
-
The following are now available in General Availability:
TomTomSDKRoutingVisualization.RoutingVisualization.addRouteTapObserver(:).TomTomSDKRoutingVisualization.RoutingVisualization.plannedRoutes.TomTomSDKRoutingVisualization.RoutingVisualization.removeRouteTapObserver(:).TomTomSDKRoutingVisualization.RoutingVisualization.selectedRoute.TomTomSDKRoutingVisualization.RoutingVisualization.selectRoute(:).TomTomSDKRoutingVisualization.RoutingVisualization.traffic.TomTomSDKRoutingVisualization.RoutingVisualization.zoomToRoutesEnabled.TomTomSDKRoutingVisualization.TrafficVisualization.TomTomSDKRoutingVisualization.TrafficVisualization.areTrafficIncidentsEnabled.TomTomSDKRoutingVisualization.TrafficVisualization.trafficIncidents(on:).TomTomSDKRoutingVisualization.RouteTapObserver.TomTomSDKRoutingVisualization.RouteTapObserver.didTapOnRoute(routingRoute:, mapDisplayRoute:).
Deprecations
- Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization. isZoomToRoutePlanEnabled. Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.isZoomToRoutesEnabled. - Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization. setActiveRoute(:). Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.selectRoute(:). - Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization.activeRoute. Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.selectedRoute. - Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization.areTrafficIncidentsEnabled. Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.traffic.areTrafficIncidentsEnabled. - Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization.routes. Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.plannedRoutes. - Deprecate the
TomTomSDKRoutingVisualization.RoutingVisualization.trafficIncidents(on:). Instead, useTomTomSDKRoutingVisualization.RoutingVisualization.traffic.trafficIncidents(on:).
Map
Fixes
- Fix wrongly scaled images that previously appeared on the map, especially when CarPlay was enabled.
Navigation
Updates
-
The following are now available in General Availability:
TomTomSDKNavigationOnline.OnlineTomTomNavigationFactory.Configuration.init.TomTomSDKNavigationOnline.OnlineTomTomNavigationFactory.Configuration.TomTomSDKNavigationOnline.OnlineTomTomNavigationFactory.create(_:).TomTomSDKNavigationOnline.OnlineTomTomNavigationFactory.
Fixes
TomTomSDKNavigation.navigationSnapshotis null until the first location is received and the map-matched. Previously,NavigationSnapshotreturned default values (that are not useful) until the first processing pipeline was run.- A consecutive deviation after visiting a waypoint now automatically resets. Previously, it would not reset.
Deprecations
-
Deprecate the following data in the exit roundabout guidance instruction:
TomTomSDKNavigationEngines.ExitRoundaboutGuidanceInstruction.turnAngleTomTomSDKNavigationEngines.ExitRoundaboutGuidanceInstruction.exitNumberTomTomSDKNavigationEngines.ExitRoundaboutGuidanceInstruction.quantizedTurnAngleUse the corresponding properties inTomTomSDKNavigationEngines.RoundaboutGuidanceInstructioninstead.
-
Deprecate the following data in the exit roundabout instruction:
TomTomSDKRoute.ExitRoundaboutInstruction.turnAngleTomTomSDKRoute.ExitRoundaboutInstruction.exitNumberTomTomSDKRoute.ExitRoundaboutInstruction.quantizedTurnAngleUse the corresponding properties inTomTomSDKRoute.RoundaboutInstructioninstead.
Removals
- Remove unused
.voicePromptcase from theRuntimeFeatureTypeenum. This is redundant as it is already handled inAVAudioSession.
Personalization
Updates
- The
TomTomSDKPersonalData.PersonalLocationstruct is now available in Public Preview.
Routing
Fixes
- Prevent creation of
TomTomSDKRoutePlanner.RoutePlanningOptionsfor electric vehicles with charging parameters if no charging options are specified. This prevents potential failed route plannings.
Search
Breaking changes
TomTomSDKCommon.ChargingPoint.capabilitieschanged type from[Capability]to[Capability]?. Unwrap the property to use the value.TomTomSDKCommon.ChargingPoint.evseIDchanged type fromStringtoString?. Unwrap the property to use the value.TomTomSDKCommon.ChargingPoint.init(evseID:capabilities:restrictions:status:connectors:physicalReference:)changed types forevseIDparameter fromStringtoString?. No actions are needed unless it’s stored as a closure or a function; if it is, you must update parameter types accordingly.TomTomSDKCommon.ChargingPoint.init(evseID:capabilities:restrictions:status:connectors:physicalReference:)changed types for capabilities and restrictions parameters to optional. No actions are needed unless it’s stored as a closure or a function; if so, you must update the parameter types accordingly.TomTomSDKCommon.ChargingPoint.restrictionschanged type from[ParkingRestriction]to[ParkingRestriction]?. Unwrap the property to use the value.- Update
TomTomSDKSearch.EVSearchResult.init()to accommodate new properties. - Update
TomTomSDKSearch.EVSearchResult.name:String?toTomTomSDKSearch.EVSearchResult.names:[String]. Users need to update their code to handle a list of names instead of a single optional string. - Update
TomTomSDKSearch.EVSearchResult.phone:String?toTomTomSDKSearch.EVSearchResult.phones:[String]. Users need to update their code to handle a list of names instead of a single optional string.
New features
-
Promote new APIs to allow optional
standardIDinTomTomSDKCommon.POICategoryIDto General Availability and deprecate the old ones: -
The following are now deprecated:
public init(standard: StandardCategoryID, mapSpecific: String? = nil)instruct POICategoryID. Instead, usePOICategoryID(standardID:, mapSpecificID:)orPOICategoryID(standardID:).- Case
.nonStandardinenum TomTomSDKCommon.StandardCategoryID. - Property
public var mapSpecific: String?instruct TomTomSDKCommon.POICategoryID. - Property
public var standard: TomTomSDKCommon.StandardCategoryIDinstruct TomTomSDKCommon.POICategoryID.
-
The following are promoted to General Availability:
TomTomSDKCommon.POICategoryID.init(mapSpecificID:).TomTomSDKCommon.POICategoryID.init(standardID:).TomTomSDKCommon.POICategoryID.init(standardID:mapSpecificID:).TomTomSDKCommon.POICategoryID.mapSpecificID.TomTomSDKCommon.POICategoryID.standardID.
Updates
- Add
TomTomSDKSearch.EVSearchResult.emails:[String].