Release Notes

version 0.34.2 - 28/11/2023

General

Breaking changes

  • Add api state to feature toggle. EnumElement RuntimeFeatureType.fooFeature has been removed EnumElement RuntimeFeatureType.smoothStyleTransition has been removed EnumElement RuntimeFeatureType.newGestureInteractor is now with @_spi EnumElement RuntimeFeatureType.quickScaleGestureIsCentered is now with @_spi EnumElement RuntimeFeatureType.resolveLaneGroupByRoutingLinkOnly is now with @_spi EnumElement RuntimeFeatureType.tomtomOrbisMapFeature is now with @_spi EnumElement RuntimeFeatureType.useLegacyPathMapMatcher is now with @_spi EnumElement RuntimeFeatureType.useNDSLive is now with @_spi EnumElement RuntimeFeatureType.useOnlineFirstHybridTileDataProvider is now with @_spi EnumElement RuntimeFeatureType.useVoicePromptModeForTTS is now with @_spi
  • Change experimental API annotation for GeoJSONLineOptions.==(::) method to @_spi(Experimental).
  • Extend TomTomSDK.VehicleUpdateObserver.onVehicleUpdate(_ : Vehicle) with an extra updatedPropertyIDs parameter and rename it to TomTomSDK.VehicleUpdateObserver.didUpdateVehicle(_ : Vehicle, updatedPropertyIDs: [PropertyID])).
  • Rename TomTomSDKVehicle.DefaultVehicleProvider.updateVehicleState to TomTomSDKVehicle.DefautVehicleProvider.updateVehicle.

Removals

  • Remove adding specific vehicle property listeners of TomTomSDKVehicle.VehicleProvider.

Updates

  • Move updateVehicle and setVehicle from TomTomSDKVehicle.DefaultVehicleProvider to TomTomSDKVehicle.VehicleProvider protocol.
  • Promote TomTomSDKCommon.Cancellable to general availability.
  • Removed @_spi(Experimental) from tomtomOrbisMapFeature. Removed @_spi(Experimental) from import TomTomSDKFeatureToggle wherever tomtomOrbisMapFeature only is used among other @_spi(Experimental) cases .
  • Update TomTomSDKCommon.VehicleLoadType and TomTomSDKCommon.ADRTunnelRestrictionCode documentation.

Location

Updates

  • Added allowsBackgroundLocationUpdates property to DefaultCLLocationProvider class.

Map

Breaking changes

  • Constructor RouteStyle.init(activeLineColor:activeLineWidths:activeOutlineWidths:alternativeLineColor:alternativeLineWidths:alternativeOutlineWidths:alternativeLineColorOverrule:departureMarkerImage:destinationMarkerImage:waypointsMarkerImage:areWaypointsVisible:) has been changed to RouteStyle.init(activeLineColor:activeLineWidths:activeOutlineWidths:alternativeLineColor:alternativeLineWidths:alternativeOutlineWidths:alternativeLineColorOverrule:departureMarkerImage:destinationMarkerImage:waypointsMarkerImage:areWaypointsVisible:reachableDistanceMarkerImage:) Add end of range route marker to indicate the reachable distance on the route.

New Features

  • Introduce on-route traffic developer portal documentation.

Fixes

  • Fix API doc.

Breaking changes

  • Enable prefetching tiles along active route for NDS.Live tile store.
  • Remove TomTomSDKLocationContextProviderEngineHybrid. LocationContext is provided by HorizonEngine instead. HorizonEngine is instantiated internally in HybridTomTomNavigationFactory.create().
  • Remove TomTomSDKLocationContextProviderEngineOffline. LocationContext is provided by HorizonEngine instead. HorizonEngine is instantiated internally in OfflineTomTomNavigationFactory.create().
  • Remove TomTomSDKLocationContextProviderEngineTileStore. LocationContext is provided by HorizonEngine instead. HorizonEngine is instantiated internally in OnlineTomTomNavigationFactory.create().
  • Removed default values from NavigationEngine.RouteStopProgress initializer.
  • Renamed TomTomSDKNavigation.GuidanceUpdatedObserver to TomTomSDKNavigation.GuidanceUpdateObserver.
  • Renamed TomTomSDKNavigation.LaneGuidanceUpdatedObserver to TomTomSDKNavigation.LaneGuidanceUpdateObserver.
  • Replace TomTomNavigation.NavigationGuidanceObserver in the typealias TomTomNavigation.NavigationObserver by TomTomNavigation.GuidanceUpdateObserver and TomTomNavigation.LaneGuidanceUpdateObserver.
  • Split TomTomNavigation.GuidanceEvent to TomTomNavigation.GuidanceUpdatedEvent and TomTomNavigation.LaneGuidanceUpdatedEvent.

Fixes

  • Call onRouteReplanned when the replanning reason is refresh or increment.
  • Fix the problem with playing multiple messages in the TTS engine created by TomTomSDKTextToSpeech.makeTextToSpeech(ttsEngine:) method.
  • Synchronised access to shared data to prevent race condition.

Updates

  • NavigationEngine.RouteStopProgress promoted to GA.
  • TomTomNavigation.deviationReplanningMode is now available in Public Preview.
  • TomTomSDKNavigationEngines.GuidanceInstruction navigation updated.
  • Add LaneGuidanceUpdate documentation.
  • Promote LocationContext to GA.
  • Promote TomTomSDKNavigation.GuidanceUpdateObserver and TomTomSDKNavigation.LaneGuidanceUpdatedObserver to Public Preview .
  • Separate NavigationObservers into different files.
  • Update API documentation: TomTomNavigation.LaneGuidanceUpdateObserver, TomTomNavigation.GuidanceUpdateObserver.

Routing

Breaking changes

  • Remove default values for ChargingOptions.

Breaking changes

  • Moved POI and related types from TomTomSDKSearch to TomTomSDKCommon module:
    • Enum OpeningHoursMode
    • Enum Source
    • Enum StandardCategoryID
    • Struct Brand
    • Struct FuelType
    • Struct OpeningHours
    • Struct POI
    • Struct POIID
    • Struct POICategoryID
    • Struct ChargingPark
  • Removed Enum TomTomSDKSearch.VehicleType. TomTomSDKCommon.VehicleType can be used instead.

Updates

  • TomTomSDKSearch.Search.FeedbackEvent is now available in General Availability.
  • TomTomSDKSearch.Search.FeedbackEventType is now available in General Availability.
  • TomTomSDKSearch.Search.FeedbackResultID is now available in General Availability.
  • TomTomSDKSearch.Search.FeedbackResultIDFactory is now available in General Availability.
  • TomTomSDKSearch.Search.sendFeedback() is now available in General Availability.
  • TomTomSDKSearchOffline.OfflineSearch.sendFeedback() is now available in General Availability.
  • TomTomSDKSearchOnline.OnlineSearch.sendFeedback() is now available in General Availability.
  • Promote TomTomSDKStructuredSearch.CandidateType to Public Preview.

version 0.33.1 - 15/11/2023

General

Updates

  • Documentation updated for TomTomSDKCommon.Observable and TomTomSDKCommon.ObservableHandler.
  • Improve documentation for TomTomSDKCommon.Vehicle.VehicleProperty and TomTomSDKCommon.Vehicle.PropertyID and the relationship between them.
  • Updated documentation for TomTomSDKCommon.GeoJSON.

Map

Updates

  • Move experimental APIs of SearchVisualization and POIVisualization to Public Preview.

Breaking changes

  • Legacy NavigationTileStore throws exception on initialization failure instead of returning nil.
  • Make TomTomNavigation.language property read only. Language can be set through new preferredLanguage property.
  • Remove LocationContextProviderEngine from DefaultTomTomNavigation, functionality is kept unchanged on top of HorizonEngine.
  • Revise persistent cache configuration parameters storagePath and storageMaxSize into CacheStorageConfig to mirror the Kotlin public API. Persistent cache now is enabled/disabled by setting the CacheStorageConfig to nil.

New Features

  • If a language change is performed during a replanning, inform when a new route is added to the session and it becomes active.

Fixes

  • Fixed the issue of empty location context in the case of horizon options that are registered before the navigation starts.

Updates

  • TomTomNavigation.addLanguageChangeObserver is now available in General Availability.
  • TomTomNavigation.language is now available in General Availability.
  • TomTomNavigation.NavigationChangeLanguageObserver is now available in General Availability.
  • TomTomNavigation.preferredLanguage is now available in General Availability.
  • TomTomNavigation.removeLanguageChangeObserver is now available in General Availability.
  • TomTomNavigation.unitSystem is now available in General Availability.
  • Added TomTomSDKNavigation.DefaultTomTomNavigation.HorizonError enum.
  • Change default guidance engine to TomTomDynamicGuidanceEngine.
  • Introduce TomTomNavigation.NavigationChangeLanguageObserver.
  • Introduce TomTomNavigation.preferredLanguage property for updating current navigationLanguage.
  • Introduce methods for adding and removing TomTomNavigation.NavigationChangeLanguageObserver to and from TomTomNavigation instance.

Routing

Updates

  • Allow requesting a route without instructions.
  • Introduction of separation of avoiding tolls and vignettes as two different features. Previously, ticking avoid tolls, would avoid vignettes and toll.

Search

Breaking changes

  • Removed searchResultID from FeedbackResultID protocol.

Deprecations

  • TomTomSDKSearch.OnlineSearch is deprecated. Replace `TomTomSDKSearchOnline.OnlineSearch.init.

Fixes

  • Make search find streets and addresses when searched along with a search area.

version 0.32.0 - 08/11/2023

General

Breaking changes

  • Rename Vehicle.VehicleProperty.commercialVehicle to Vehicle.VehicleProperty.isCommercial.
  • Rename Vehicle.VehicleUpdateOption to Vehicle.PropertyID.
  • Rename Vehicle.VehicleUpdateOption.commercialVehicle to Vehicle.PropertyID.isCommercial.

Updates

  • Removed duplicate entries under Pod from Building a navigation app documentation.

Location

New Features

  • Create Unified(NDA) OpenLR location decoder.

Map

Updates

  • Expand MapView inline documentation.
  • Expand Style inline-documentation.
  • Update style version to 25.1.*.

Breaking changes

  • Make NavigationTileStore init() throw on failure.
  • Rename TomTomSDKNavigationEngines.HorizonSnapshotState.extensionCounter to TomTomSDKNavigationEngines.HorizonSnapshotState.updateCounter.
  • Rename CombustionEngineParameter to CombustionEngineProperty.
  • Rename CombustionEngineParameter.auxiliaryFuelPower to CombustionEngineProperty.speedConsumption.
  • Rename CombustionEngineParameter.speedFuelConsumption to CombustionEngineProperty.speedConsumption.
  • Rename ElectricEngineParameter to ElectricEngineProperty.
  • Rename VehicleParameter to VehicleProperty.
  • Rename VehicleUpdateOption.auxiliaryFuelPower to VehicleUpdateOption.combustionAuxiliaryPower.
  • Rename VehicleUpdateOption.auxiliaryPower to VehicleUpdateOption.electricAuxiliaryPower.
  • Rename VehicleUpdateOption.speedConsumption to VehicleUpdateOption.electricSpeedConsumption.
  • Rename VehicleUpdateOption.speedFuelConsumption to VehicleUpdateOption.combustionSpeedConsumption.

New Features

  • Add use case example for LocationContext.
  • Introduce NavigationActiveRouteChangedObserver to inform when active routes have changed during the navigation session.

Updates

  • Align the trigger configs to the latest Instruction Engine spec.
  • Clear NDS.Live navigation cache when base URL changes.
  • Introduce new experimental protocols TomTomNavigation.GuidanceUpdatedObserver, TomTomNavigation.LaneGuidanceUpdatedObserver, TomTomNavigation.JunctionViewUpdatedObserver.
  • Route.RouteStop inline documentation was updated.
  • TomTomNavigation.departFromWaypoint(RouteStop) is now available in General Availability.
  • TomTomSDKNavigation.NavigationDestinationArrivalObserver is now available in General Availability.
  • TomTomSDKNavigation.NavigationDestinationArrivalObserver.didArriveAtDestinationOn(route:) renamed to TomTomSDKNavigation.NavigationDestinationArrivalObserver.didArriveAtDestination(route:).
  • TomTomSDKNavigation.TomTomNavigation.addDestinationArrivalObserver(_:) is now available in General Availability.
  • TomTomSDKNavigation.TomTomNavigation.removeDestinationArrivalObserver(_:) is now available in General Availability.
  • Update TomTomSDKNavigationEngines.LocationContext documentation.

Routing

Breaking changes

  • Removing the extra word 'budget' from cases inside of Budget enum which lives in TomTomSDKRoutePlanner.Budget.

Fixes

  • Fix online route planning on iOS 17.

Updates

  • Create and publish new SDK framework TomTomSDKRoutingCommon.
  • TomTomSDKRoutePlanner.Budget is now available in General Availability.

Search

Breaking changes

  • Extend TomTomSDKSearch.Search protocol with cancellation support via returned TomTomSDKCommon.Cancellable.
  • Remove TomTomSDKSearch.CustomRecord and TomTomSDKSearch.CustomSearchDataProvider.
  • Rename TomTomSDKSearch.CustomPOIRecord to TomTomSDKSearch.CustomPOI.
  • Rename TomTomSDKSearch.CustomPOISearchDataProvider to TomTomSDKSearch.CustomPOIProvider.
  • Replace TomTomSDKSearch.CancellableSearch protocol usage with TomTomSDKSearch.Search.
  • Replace TomTomSDKSearchOnline.OnlineSearchFactory.createOnlineCancellableSearch() with TomTomSDKSearchOnline.OnlineSearchFactory.create().
  • Replace TomTomSDKSearchOnline.OnlineSearchFactory.createOnlineSearch() with TomTomSDKSearchOnline.OnlineSearchFactory.create().

Deprecations

  • Replace TomTomSDKReverseGeocoderOnline.OnlineReverseGeocoder usages with `TomTomSDKReverseGeocoderOnline.OnlineReverseGeocoderFactory.create.

Fixes

  • Fixed a conversion bug for OfflineSearch.requestPOIDetails(options:completion:) request when 24h opening times are returned.

Updates

  • Promote TomTomSDKSearchOnline.OnlineSearchFactory to general availability.

version 0.31.0 - 30/10/2023

General

Fixes

  • Added missing offlineMapMatchingEngine in code snippet.
  • Disable assert in Release build.

Updates

  • MeasurementDecorator was covered with tests.
  • Split VehicleHorizon snippet to avoid expose SafetyLocation and Hazard on DP.
  • Test release note.

Location

New Features

  • Create LocationDecoder with OpenLR decoding method and replace MapProjector by NDS OpenLR decoder.

Map

New Features

  • Add Elastic Data Provider iOS Bindings swift part.

Fixes

  • Fix CLLocationCoordinate2D Equatable conformation.
  • Fix library not loaded error.
  • Fix wrong scale factor passed into map holder environment.

Updates

  • Promote RouteSection to GA.
  • Promote RouteSection.Type to GA.
  • Promote RouteSection.indexRange to GA.
  • Promote RouteSection.init.
  • Promote RouteSection.type to GA.
  • Remove Search visulization empty results retry mechanism.
  • Rename RouteSection.textureUri to RouteSection.textureURI.

Breaking changes

  • Removed methods:
  • TomTomSDKNavigation.TomTomNavigation.markWaypointAsVisited(waypoint: RouteStop)
  • TomTomSDKNavigation.DefaultTomTomNavigation.markWaypointAsVisited(waypoint: RouteStop) Use the following methods instead:
  • TomTomSDKNavigation.TomTomNavigation.departFromWaypoint(waypoint: RouteStop)
  • TomTomSDKNavigation.DefaultTomTomNavigation.departFromWaypoint(waypoint: RouteStop).

Fixes

  • Do not replan when current car position is off-road near origin.
  • Missing translation in the navigation UI.
  • Release note message.

Removals

  • TomTomSDKNavigation.RouteReplanningEngineOptions.defaultRouteUpdateMode,. TomTomSDKNavigation.RouteReplanningEngineOptions.defaultReplanInterval, TomTomSDKNavigation.RouteReplanningEngineOptions.defaultMinTrafficDelay, TomTomSDKNavigation.RouteReplanningEngineOptions.defaultMinTimeDifference was removed. Use the constants from TomTomSDKNavigation.RouteReplanningEngineOptions.Defaults enum instead.
  • TomTomSDKNavigation.TomTomArrivalDetectionEngine.defaultDestinationDistanceThreshold and. TomTomSDKNavigation.TomTomArrivalDetectionEngine.defaultTimeThreshold were removed.

Updates

  • `TomTomSDKNavigation.TomTomNavigation.addWaypointArrivalObserver.
  • `TomTomSDKNavigation.TomTomNavigation.removeWaypointArrivalObserver.
  • Added Equatable conformance to TomTomSDKNavigationEngines.RegionalSpeedLimit.
  • Added methods:
  • TomTomSDKNavigation.TomTomNavigation.departFromWaypoint(waypoint: RouteStop)
  • TomTomSDKNavigation.DefaultTomTomNavigation.departFromWaypoint(waypoint: RouteStop).
  • Promote GuidanceInstruction.drivingSide to GA.
  • TomTomSDKNavigation.NavigationOptions is now available in General Availability.
  • TomTomSDKNavigation.NavigationWaypointArrivalObserver is now available in General Availability.
  • TomTomSDKNavigation.RoutePlan is now available in General Availability.
  • TomTomSDKNavigation.TomTomGuidanceEngine.defaultAppendInstructionDistanceThreshold is deprecated now. Use the TomTomSDKNavigation.TomTomGuidanceEngine.Defaults.appendInstructionDistanceThreshold instead.

Routing

Breaking changes

  • Case names of TomTomSDKRoute.Consumption enum are shortened in a way that their arguments have labels.
  • Rename TomTomSDKRoute.Route.RouteInitializationError.routeGeometryEmpty to TomTomSDKRoute.Route.InitializationError.routeLegsEmpty.emptyGeometry.
  • Rename TomTomSDKRoute.Route.RouteInitializationError.routeLegsEmpty to TomTomSDKRoute.Route.IInitializationError.routeLegsEmpty.emptyLegs.
  • Rename TomTomSDKRoute.Route.RouteInitializationError to InitializationError.

New Features

  • Toll cost indication.

Updates

  • TomTomSDKRoute.Route has two init functions now; one in an experimental state containing junctionViewInformation parameter and the other init.
  • Add Planning EV Routes documentation.
  • Document Orbis unsupported options.
  • Promote TomTomSDKRoutePlanner.RangeBoundary to Public Preview.
  • Promote TomTomSDKRoutePlanner.RangeCalculationOptions.routeToInclude to Public Preview.
  • Promoting TomTomSDKRoute.Consumption to GA.
  • Promoting TomTomSDKRoute.RoutePoint and TomTomSDKRoute.Segment to GA.
  • TomTomSDKRoute.Route is now available in General Availability.
  • TomTomSDKRoute.Summary is now available in General Availability.
  • TomTomSDKRoutePlanner.GuidanceOptions is now available in General Availability.
  • Update documentation for InstructionPhonetics.

Search

Fixes

  • Added tests for OnlineSearch class.

Updates

  • TomTomSDKReverseGeocoderOnline.OnlineReverseGeocoderFactory is now available in General Availability.

version 0.30.0 - 19/10/2023

General

Breaking changes

  • Added enum TomTomSDKCommon.SpeedLimit to TomTomSDKCommon.
  • Renamed TomTomMapsPlatformFeature to TomTomOrbisMapFeature. From now on, use TomTomOrbisMapFeature instead of TomTomMapsPlatformFeature, allowing you to toggle the TomTom Orbis Maps within your application. For additional details, please refer to this link.

New Features

  • The Navigation SDK can now be integrated into your project using Swift Package Manager. We will continue to support Cocoapods alongside Swift Package Manager. For more details, check the Project Setup guide.

Updates

  • Updated documentation for continuous replanning and route deviation.

Map

New Features

  • Added Elastic Data Provider iOS Bindings.
  • Implemented tap observers for POIs in searchvisualization.

Fixes

  • Fixed overlapping markers bug.

Updates

  • Added geometry property to Route.
  • Added geometry property to RouteOptions.
  • Added tag property to RouteOptions.
  • Added textureUri property to RouteSection.
  • Added WidthByZoom struct.
  • Added widths property to RouteOptions.
  • Renamed RouteSection.range to RouteSection.indexRange.
  • Renamed RouteSection.RouteSectionError to RouteSection.Error.
  • Updated Elastic Data Provider iOS Bindings dependencies.

Breaking changes

  • Added speedLimit and roadCategory properties to TomTomSDKNavigationEngines.RegionalSpeedLimit
  • Added speedLimit property to TomTomSDKNavigationEngines.SpeedLimit
  • Added the TomTomSDKCommon.RoadCategory enum to TomTomSDKCommon.
  • Improved NDSStore creation.
  • Made struct TomTomSDKNavigationEngines.SpeedLimit conforming to Equatable protocol.
  • Removed enum TomTomSDKNavigationEngines.SpeedLimit from TomTomSDKNavigationEngines.
  • Removed NavigationOptions.alternativeRoutePlans. Alternative route plans are not supported.
  • Removed NavigationOptions.init(activeRoutePlan:, alternativeRoutePlans:). Add NavigationOptions.init(activeRoutePlan:) instead. Alternative route plans are not supported.
  • Removed option unknown from TomTomSDKCommon.SpeedLimit enum.
  • Removed speed, type, speedFog, speedSnow, speedRain properties from public struct TomTomSDKNavigationEngines.SpeedLimit
  • Removed roadType, isWeatherDependent, isTimeDependent, type, speed properties from TomTomSDKNavigationEngines.RegionalSpeedLimit
  • Removed RoutePlan.init(route:routingOptions:). Add RoutePlan.init(route:routePlanningOptions:) instead.
  • Removed the TomTomSDKNavigationEngines.RegionalSpeedLimit.RoadType enum from TomTomSDKNavigationEngines.RegionalSpeedLimit.
  • Renamed RoutePlan.routingOptions to RoutePlan.routePlanningOptions.
  • Renamed struct TomTomSDKNavigationEngines.SpeedLimits to TomTomSDKNavigationEngines.SpeedLimit.
  • Renamed TomTomSDKNavigationEngines.City to TomTomSDKNavigationEngines.CityElement.
  • Renamed TomTomSDKNavigationEngines.CountryInformation to TomTomSDKNavigationEngines.CountryInformationElement.
  • Renamed TomTomSDKNavigationEngines.DangerousGoodsRestriction to TomTomSDKNavigationEngines.DangerousGoodsRestrictionElement.
  • Renamed TomTomSDKNavigationEngines.GeneralRoadProperties to TomTomSDKNavigationEngines.GeneralRoadPropertiesElement.
  • Renamed TomTomSDKNavigationEngines.PathGeometry to TomTomSDKNavigationEngines.PathGeometryElement.
  • Renamed TomTomSDKNavigationEngines.Region to TomTomSDKNavigationEngines.RegionElement.
  • Renamed TomTomSDKNavigationEngines.SafetyLocation to TomTomSDKNavigationEngines.SafetyLocationElement.
  • Renamed TomTomSDKNavigationEngines.SpeedLimits to TomTomSDKNavigationEngines.SpeedLimitsElement.
  • Renamed TomTomSDKNavigationEngines.Street to TomTomSDKNavigationEngines.StreetElement.
  • Renamed TomTomSDKNavigationEngines.TrafficSign to TomTomSDKNavigationEngines.TrafficSignElement.
  • Renamed TomTomSDKNavigationEngines.VehicleRestriction to TomTomSDKNavigationEngines.VehicleRestrictionElement.

New Features

  • Added support for Bulgarian, Catalan, Slovak in spoken messages.

Fixes

  • Removed default implementation of TomTomNavigation start(), start(navigationOptions:) and update(navigationOptions:) methods.

Updates

  • Made NavigationOptions.activeRoutePlan immutable.
  • UseNDSLive disabled.

Routing

Breaking changes

  • Removed Array.sectionsWithRouteOffset(_:) and Section.updateRouteOffset(with:) usages. Create a new Section instance to have an updated offset.
  • Removed remainingRoutePoints from being public, since it is only used internally.

Fixes

  • Charging options can only be used with RouteType.Fast.

Updates

  • HybridRoutePlanner is now available in Public Preview.

Search

Fixes

  • Fix for crash in offline search for gas stations

version 0.29.0 - 06/10/2023

General

Breaking changes

  • Made DefaultTomTomNavigation internal.
  • Promoted some experimental APIs to Public Preview.

Fixes

  • Ensure valid links in API reference.

Map

Breaking changes

  • Updated type signature of FollowCameraOperatorConfig.ControlPointsMap from [String: ControlPoints] to [CameraOperatorRoadClass: ControlPoints].

New Features

  • Introduced new enum CameraOperatorRoadClass.

Removals

  • Removed FollowCameraOperatorConfig.RoadClass.

Breaking changes

  • Make TomTomSDKNavigation.TomTomNavigation a class-only protocol. Convert implementations of TomTomSDKNavigation.TomTomNavigation to classes.
  • Reverted DefaultTomTomNavigation from internal to deprecated.

New Features

  • Support city district, neighborhood and subCountry in horizon-based LocationContext.

Fixes

  • Make TomTomSDKNavigation.TomTomNavigation a class-only protocol to allow creation a weak references to its implementation.

Updates

  • Add location context collaboration tests for tile store.
  • NDS.Live navigation tile store can now be constructed without a persistent cache.

Routing

New Features

  • Offline route assets provider.

Fixes

  • Explicitly forbid to create requests with chargingOptions and enabled waypointOptimization parameters.

Updates

  • Clarify the documentation of the baseUrl parameter.

version 0.28.5 - 30/09/2023

version 0.28.4 - 30/09/2023

version 0.28.3 - 30/09/2023

version 0.28.2 - 21/09/2023

General

Updates

  • Ensure the file layout of the Cocoapods package is valid according to specification

Map

Updates

  • Promote these APIs to public preview TomTomSDKMapDisplay.MapView.setCurrentLocationButton(backgroundColor:forStyle:) TomTomSDKMapDisplay.MapView.setCurrentLocationButton(size:) TomTomSDKMapDisplay.MapView.setCompassButton(compassIcon:forStyle:) TomTomSDKMapDisplay.MapView.setCompassButton(northUpIcon:forStyle:) TomTomSDKMapDisplay.MapView.setCompassButton(backgroundColor:forStyle:) TomTomSDKMapDisplay.MapView.setCompassButton(size:).

Breaking changes

  • Remove TomTomSDKNavigation.EngineActions protocol, all APIs from TomTomSDKNavigation.EngineActions protocol were moved to TomTomSDKNavigation.TomTomNavigation.

New Features

  • Add minimal distance ahead for which snapshot update will be generated.

Updates

  • Make LocationContextProviderErrors public.
  • Prevent replanOnDeviation requests from cancelling each other.

Search

New Features

  • Introduce PersonalDataOffline API to inject personalized data and persist it in the offline storage.

version 0.28.0 - 14/09/2023

  • Package artifacts structure corrupted. Use build 0.28.2 or later

version 0.27.4 - 06/09/2023

Map

Updates

  • Fix crash when switching to routeOverview camera mode on certain conditions

New features

  • Stick to route when supporting points are passed

Fixes

  • Provided localization keys for some NIP strings

General

Updates

  • Promote Metadata API to Public Preview

Fixes

  • Round the double value to the nearest or even before converting to the integer value

version 0.26.1 - 14/08/2023

version 0.25.0 - 07/08/2023

Map

Updates

  • Remove Diagnostic API
  • Fix FPS measurement in Metrics API to measure GPU FPS

Search

New features

  • Add Cancellation support for Online Search API.

version 0.24.0 - 01/08/2023

Map

Updates

  • Add carplay to navigation demo app for debugging
  • Remove font names from copyright notices
  • Update style version to 24.4.*
  • Implement metric #5 - aggregated gestures FPS
  • Place MapMetricsMonitor API under feature toggle

Search

Updates

  • Promote TomTomSDKSearch.Source.custom to General Availability. RelNote: [SEARCH][INTERNAL] Remove unnecessary declarations for non-public APIs.

Updates

  • Make NavigationTileStoreAccess interface to use different tile store accesses in NavigationTileStore.

Fixes

  • Prevent route replan on deviation after route refresh

General

New features

  • Add NDS Live toggle.

Updates

  • Add guideline for cancellation APIs.

version 0.23.1 - 25/07/2023

Map

New features

  • Added new MapMetric: gestureFPS(Measurement<UnitFrequency&gt;, status: GestureState, type: GestureCategory)

Updates

  • Change drivingStyleFPS metric to be more accurate

Fixes

  • Fix marker layer mapping order

Routing

Updates

  • Guide: Importing, exporting, and modifying routes, added instructions on parsing GPX files using the cocoa pod library.

New features

  • Introduce OffRoad navigation factory.

version 0.22.1 - 13/07/2023

Map

Fixes

  • Fix marker layer mapping order
  • Fix tilt of the map property

Routing

Updates

  • Guide: Importing, exporting, and modifying routes, added instructions on parsing GPX files using the cocoa pod library.
  • Waypoints and custom routes guide updated with a setup section for creating NavigationConfiguration instance.

New features

  • Introduce navigation factories. RelNote: [NAVIGATION][UPDATE] Navigation handles updating of data stores internally.

Updates

  • Navigation handles updating of data stores internally.

version 0.21.1 - 06/07/2023

Map

Updates

  • Expose user properties on Metrics API

Fixes

  • Func TomTomMap.updateCameraTrackingMode(mode:config:) has been removed
  • Var CameraActions.followCameraConfig has been added as a protocol requirement

Routing

Updates

  • Clarify avoid behavior for routing in documentation.
  • Add missing low emission zone to docs

New features

  • Introduce factories for offline vehicle horizon, map matching, location context, route projection engines RelNote: [NAVIGATION][BREAKING CHANGE] Hybrid map matching, location context, route projection engine creation will require use of new factories
  • Introduce DataStoreMaintenanceEngine.

Updates

  • TomTomSDKNavigationEngines: Func RouteTrackingEngine.obtainTrackedRoutes(navigationSnapshot:) has been renamed to Func RouteTrackingEngine.obtainTrackingStates(navigationSnapshot:).
  • TomTomSDKNavigation: Func NavKitRouteTrackingEngine.obtainTrackedRoutes(navigationSnapshot:) has been renamed to RouteTrackingEngine.obtainTrackingStates(navigationSnapshot:).
  • TomTomSDKNavigation: Func NavigationRouteTrackingStateUpdateObserver.onRouteTrackingStateUpdate(route:routeTrackingState:) has been renamed to Func onRouteTrackingStateUpdate(routeTrackingState:).
  • TomTomSDKNavigation: Func NavigationRouteTrackingStateUpdateObserver.onRouteTrackingStateUpdate(route:routeTrackingState:) has parameter type change from TomTomSDKRoute.Route and TomTomSDKNavigationEngines.RouteTrackingState to TomTomSDKNavigationEngines.RouteTrackingState only.

Fixes

  • Removed the need to set automaticDeviationRouteFetching feature toggle to enable automatic replanning of trips in deviation.

version 0.20.0 - 26/06/2023

Map

Updates

  • Implement Metric #2 (Measure FPS) to Metrics API

Search

Fixes

  • Fix Parking Prices response parsing.

New features

  • Added deviationReplanningMode access on Navigation object, now this setting can be changed while navigation is running.

version 0.19.0 - 16/06/2023

Map

New features

  • Add IC/JCT POI, intersection, traffic light supports

Updates

  • Remove setNeedsLayout and layoutIfNeeded in AnnotationViewContainer and AnnotationContainerView
  • Replace Device Orientation with Interface Orientation
  • Introduce map loading time metric and add example to demo
  • Bump style version
  • Introduce and expose MapMetricsMonitor API

Fixes

  • Fix map loading time metric
  • Clear cache when changing the map.
  • Provide default value to delay parameter in TrafficIncident model.

Search

Updates

  • Prepare documentation for TomTomSDKSearchOnlineCustomData.
  • Move TomTomSDKSearchOnlineCustomData API to Public Preview.

Fixes

  • Fix Parking Prices response parsing.

version 0.18.1 - 07/06/2023

Map

Updates

  • Align maneuver length logic with android

Fixes

  • Fix satellite and custom style not working
  • Fix directional arrows length

Search

New features

  • Add cache support for the POI categories request of Online Search.

Fixes

  • Fix parking availability response parsing in DynamicData if only partial data is available

Routing

Fixes

  • Fix route planning cancellation

Updates

  • Trigger route projection before map matching in the main navigation pipeline
  • All electric engine parameters are now optionals
  • Check for obsolete map references and project route, if found

Removals

  • Delete locale parameter from location context engine initializers.

Fixes

  • Remove lane sections for removed departure instruction
  • Fix mapmatcher softDR usage decision.
  • Fixed crash when removing safety location

General

Updates

  • Add Orbis copyrights endpoint
  • Improve Swift Packages readability.

Fixes

  • Fix VRs documentation

version 0.14.5 - 04/06/2023

Map

New features

  • Snap zone geometry to route.

Routing

Fixes

  • Fix route planning cancellation

Updates

  • Remove sticking to route on deviation
  • Default vehicle provider guide with snippets

Fixes

  • Fix mapmatcher softDR usage decision.

General

Updates

  • Replace static images in VRs documentation with tables

version 0.13.0 - 29/04/2023

Map

New features

  • Add Search Visualization to show/hide pois
  • Snap zone elements to the route and remove end marker
  • Add safety camera support to nv addon
  • Add style changing example to demo app
  • Add search functionality to demo app
  • Add TPEG traffic data provider
  • Cleanup of componentization, removal of MapDispalyOnboardTileDataProvider

Updates

  • Migrate to travelModeProfile for tiles url query params
  • Remove sprite cache
  • Add support for ADR and Hazmat for vehicle restrictions
  • Update query param restriction to new style
  • Add logs to custom style example
  • Remove static metadata
  • Expose custom style url option in demo app
  • Style cache manager refactoring
  • Adds vehicle restriction dark style support.
  • Adds vehicle restriction dark style support.
  • Turn off all traffic incidents except on-route and turn it on when route is removed.
  • Orbis map change from 10-test to gosdk10-test
  • Update RouteOptions documentation
  • Update MapDelegate - removed unnecessary methods. Updated CameraActions.
  • Introduce OnlineCachePolicy Measurement<UnitInformationStorage&gt;
  • Marked metadata as GA
  • CameraUpdate and FitToCoordinatesOptions
  • CameraUpdate and FitToCoordinatesOptions deprecation "
  • Sprite cache improvements
  • CameraUpdate and FitToCoordinatesOptions deprecation
  • CameraUpdate properties setters depreatetion, FitToCoordinatesOptions deprecation
  • Offline map update.
  • Offline map documentation update, added missing part about fonts

Fixes

  • Fix amigo inheritence bug with map options
  • Fix tile caching issue.
  • Fix crash when API key is provided in MapOptions but not in MapsDisplayService
  • Fix deadlock when there is no internet connection
  • Remove race condition in NDSStoreAccessSync implementation.
  • Fix glitches in map shutdown example
  • Fix crash happening during mapview deallocation
  • Adjusted location validator’s range for valid horizontal accuracy
  • Offline map is shown again.
  • Add popup to notify there is no dark mode with satellite style
  • Fix crash on smooth transition example
  • Fix memory leak in TrafficDataProvider
  • Fix layers visibility between style modes
  • Fix keyboard and update search visibility on demo
  • Fix marker label default size
  • Fix Maneuver List Header Disappear

Search

Breaking changes

  • Replaced type of property resultTypes from Array to Set.
  • Changed property SearchOptions.searchAreas: Geometry? → [Geometry] (from simple optional to array)

Updates

  • Introduce new TomTomSDKSearchCommon component for sharing functionality between TomTomSDKSearch, TomTomSDKReverseGeocoder and TomTomSDKDynamicData components.
  • Cover all available DynamicData APIs in the public developer documentation.
  • Promote Hybrid Reverse Geocoder API to Public Preview
  • Update labels for Search, Reverse Geocoder, Dynamic Data documentation according to the related component API state.
  • Promote OnlineSearch APIs to the General Availability state, except OnlineSearch.sendFeedback, which promote to the Public Preview state.
  • Promote OfflineSearch APIs to the General Availability state, except OfflineSearch.sendFeedback.
  • Promote HybridSearch APIs to the Public Preview state, except HybridSearch.sendFeedback.
  • Promote FuelPriceProvider.requestFuelPrices and related types from TomTomSDKDynamicData to the General Availability API state.
  • Promote ParkingDetailProvider.requestParkingAvailability and related types from TomTomSDKDynamicData to the General Availability API state.
  • Promote ParkingDetailProvider.requestParkingPrice and related types from TomTomSDKDynamicData to Public Preview API state.
  • Promote OnlineDynamicDataProviderFactory from TomTomSDKDynamicDataOnline to the General Availability API state.
  • Promote Custom Search providers API and Feedback API to Public Preview.
  • Promote Search.requestPOIDetails() and related types to GA.
  • Promote Search.autocomplete() API and related types to GA.
  • Promote Search.requestPOICategories() and related types to GA.
  • Promote Search.requestGeometryData() API and related types to GA.
  • ParkingAvailabilityStatus.numberOfEmptySpots and ParkingAvailabilityStatus.emptySpotsCount receive nil in ParkingAvailabilityStatus.init as a default value.
  • TomTomSDKDynamicData: Constructor Availability.init(current:perPowerLevel:) has been removed
  • TomTomSDKDynamicData: Constructor EVChargingAvailabilityResponse.init(connectors:availabilityID:) has been removed
  • TomTomSDKDynamicData: Struct CurrentStatus has been removed
  • TomTomSDKDynamicData: Var Availability.current has been removed
  • TomTomSDKDynamicData: Var Availability.perPowerLevel has been removed
  • TomTomSDKDynamicData: Struct Connector has been renamed to Struct ConnectorAvailability
  • TomTomSDKDynamicData: Accessor Connector.type.Get() has return type change from Swift.String to TomTomSDKCommon.ConnectorType
  • TomTomSDKDynamicData: Accessor EVChargingAvailabilityOptions.availabilityID.Get() has return type change from Swift.String to TomTomSDKDynamicData.EVChargingAvailabilityID
  • TomTomSDKDynamicData: Accessor EVChargingAvailabilityResponse.availabilityID.Get() has return type change from Swift.String to TomTomSDKDynamicData.EVChargingAvailabilityID
  • TomTomSDKDynamicData: Accessor EVChargingAvailabilityResponse.connectors.Get() has return type change from [TomTomSDKDynamicData.Connector] to [TomTomSDKDynamicData.ConnectorAvailability]
  • TomTomSDKDynamicData: Constructor Connector.init(type:total:availability:) has parameter 0 type change from Swift.String to TomTomSDKCommon.ConnectorType
  • TomTomSDKDynamicData: Constructor Connector.init(type:total:availability:) has return type change from TomTomSDKDynamicData.Connector to TomTomSDKDynamicData.ConnectorAvailability
  • TomTomSDKDynamicData: Constructor EVChargingAvailabilityOptions.init(availabilityID:connectors:minPower:maxPower:) has parameter 0 type change from Swift.String to TomTomSDKDynamicData.EVChargingAvailabilityID
  • TomTomSDKDynamicData: Var Connector.type has declared type change from Swift.String to TomTomSDKCommon.ConnectorType
  • TomTomSDKDynamicData: Var EVChargingAvailabilityOptions.availabilityID has declared type change from Swift.String to TomTomSDKDynamicData.EVChargingAvailabilityID
  • TomTomSDKDynamicData: Var EVChargingAvailabilityResponse.availabilityID has declared type change from Swift.String to TomTomSDKDynamicData.EVChargingAvailabilityID
  • TomTomSDKDynamicData: Var EVChargingAvailabilityResponse.connectors has declared type change from [TomTomSDKDynamicData.Connector] to [TomTomSDKDynamicData.ConnectorAvailability]
  • Move ReverseGeocoder.AreaType enum from Public Preview to Generally Available
  • Convert SearchResultType from struct to enum
  • Move SearchRequestSummary struct inside SearchResponse struct
  • Move ReverseGeocoderSummary inside ReverseGeocoderResponse

Fixes

  • Fix OpeningHours conversion for Offline Search that resulted in an hour shift due to the daylight changes.
  • Fix OpeningHours conversion for Offline Search for 24/7 POIs.
  • Update PlaceMatch.navigablePosition using OfflineReverseGeocoder response instead of a query position.
  • Return the adjusted position in the Online Reverse Geocoder response instead of the position from the query.
  • Fix mapping for the POI Category code returned by OfflineSearch.autocomplete.
  • Adjust OpeningHours using time zone in Onboard Search

Routing

New features

  • Expose information on when and where path alternative forks off the primary route.
  • Expose low emission zones on route

Updates

  • Ensure the index of route point is not out of bounds
  • Publish a new guide on importing, exporting, and modifying routes.

Fixes

  • After refreshing a route, the instructions are not removed.
  • Remove conformance to Error from RoundaboutInstruction

Breaking changes

  • TomTomSDKCommon: Constructor DefaultDistanceRangeFormatter.init(ranges:language:) has been renamed to DefaultDistanceRangeFormatter.init(ranges:locale:)
  • TomTomSDKNavigationEngines: Var NavigationSnapshot.language has been renamed to NavigationSnapshot.locale
  • TomTomSDKTextToSpeechEngine: Func TextToSpeechEngine.changeLanguage(languageCode:) has been renamed to Func TextToSpeechEngine.changeLocale(with:)
  • TomTomSDKTextToSpeechEngine: Var TextToSpeechEngine.currentVoiceLanguage has been renamed to Var TextToSpeechEngine.locale
  • TomTomSDKTextToSpeechEngine: Func TextToSpeechEngine.isLanguageAvailable(_:) has been renamed to Func isLanguageAvailable(for:)
  • TomTomSDKTextToSpeechEngine: Func TextToSpeechEngine.isLanguageAvailable(_:) has parameter type change from Swift.String to Foundation.Locale
  • TomTomSDKDefaultTextToSpeech:Func SystemTextToSpeechEngine.isLanguageAvailable(_:) has been renamed to Func isLanguageAvailable(for:)
  • TomTomSDKDefaultTextToSpeech: Constructor SystemTextToSpeechEngine.init(language:gender:) has a parameter type change from Swift.String? to Foundation.Locale?
  • TomTomSDKDefaultTextToSpeech: Constructor SystemTextToSpeechEngine.init(voiceIdentifier:) has parameter type change from Swift.String to Foundation.Locale
  • TomTomSDKDefaultTextToSpeech: Func SystemTextToSpeechEngine.isLanguageAvailable(_:) has parameter type change from Swift.String to Foundation.Locale
  • TomTomSDKTextToSpeech: Func TextToSpeech.changeLanguage(languageCode:) has been renamed to Func changeLanguage(locale:)
  • TomTomSDKTextToSpeech: Func TextToSpeech.changeLanguage(languageCode:) has parameter type change from Swift.String to Foundation.Locale

New features

  • Add TomTomSDKDataManagementOffline.CompositeRegionsUpdater, to support the proper visualization of the NDS map (at the region set level).
  • Add support for Finnish and Mexican Spanish in spoken messages.
  • Improve NavigationTileStore config API.
  • Added new RouteLengthPolicy for Vehicle Horizon.
  • Add TrafficSign HorizonElement in Horizon Engine.
  • Add CountryInfromation HorizonElement in Horizon Engine.
  • Draw a dotted line connecting the drivable and final destination.
  • Add support for polyline pattern textures in navigation visualization service
  • Add support for polyline pattern textures.
  • Add NDSStoreAccessPermit as a way to specify the map license value (or keystore password) and add it as an argument to NDSStore.init (instead of keystorePassword).
  • Add support for polyline pattern textures to navigation visualization addon.

Updates

  • DefaultVehicleProvider.updateVehicleState and DefaultVehicleProvider.setVehicle may now throw VehicleError.invalidVehicleParameter
  • Extend GOSDK with testing of the server 3.0 map routing API endpoint
  • Move the TimeUtils file to the Triggering folder
  • VehicleProvider has now specific registration error. VehicleError cases renamed.
  • Extend VehicleProvider’s update options with battery curve and charging connectors.
  • Promote Guidance Instruction to GA
  • Move Route Instruction to GA

Removals

  • Remove the TimeProvider protocol

Fixes

  • HorizonElement ids are now stable
  • Use up-to-date vehicle during replanning.
  • Remove Start driving instruction from all replanned routes.
  • Fix for missing phonetics when static guidance engine is used
  • Set correct language in verbal message generator
  • filter out traversed supporting points in b2r request
  • Avoid crashes in map update code during the application termination.
  • Fix for arrival instruction’s offset being greater than route length
  • Fix for missing departure instruction
  • Fix for lane guidance with empty lanes
  • When recalculating deviation for primary route, always use 0 maxAlternatives to process the new route faster.
  • Remove CocoaMQTT framework dependency from all SDK modules
  • Progress updates were not sent until the location started moving along the route. This is now fixed.
  • Fix confirmation announcement inconsistency
  • Handle different variants of locale in GuidanceOptions

General

New features

  • A configuration parameter to allow background map update downloads is added.
  • Add experimental support for downloading map updates when the application moves to the background
  • Expose download cost of map region update.

Updates

  • Refactor logger - remove InternalLoggerOutput and ProxyLoggerOutput
  • Update Logger Documentation
  • Update VRs and LEZs Dev Portal documentation
  • Set automatically synthesized Equatable protocol conformance directly on types
  • Add vehicle restrictions to demo navigation app
  • Set developer dir in renovate flow
  • define depType for regex manager dependencies
  • Add fonts legal notice
  • Enable validation for missing inline-documentation in CommonSDK module
  • Add missing inline documentation for GA
  • Onboard map deployment guide update for Xcode 14 simulators
  • Dev portal documentation update
  • Add NavigationView to the "Build navigation app" guide.
  • Extend Unit Information Storage with missing values.

Fixes

  • add missing security attribute
  • The download manager now correctly retries when resuming a download with an expired temporary URL.
  • ObservableHandler is executing onFirstObserverAdded and onLastObserverRemoved on the requested queue; duplicated call of onLastObserverRemoved is removed.
  • Log messages from the download manager now end up correctly in log files
  • Report the correct error on no network connection during map update when background downloads are enabled.
  • Fix broken links in documentation
  • Fix crash when canceling map update download with backgrounds downloads enabled.
  • Downloading offline map updates no longer causes a large RAM usage.

version 0.2.3404 - 10/02/2023

Map

New features

  • Add traffic data provider framework for offline maps

Updates

  • Style version update to v24
  • Style version update to v24

Fixes

  • correct style file for hill shading
  • fix an issue about internal caching causes stale tile loading for offline maps

Search

Updates

  • Delete @objcMembers attribute from public APIs of TomTomSDKSearch module

New features

  • Bindings between Swift and Obj-C++ implementation of public Traffic API.
  • Enable Orbis routing with "Orbis Map" debug flag in the demo app

Updates

  • Validation in BorderCrossing
  • Validation in Tollgate Instructions

Fixes

  • Fix conversion error in route progress for offline predictions.

version 0.2.3323 - 03/02/2023

Map

New features

  • Add hill shade support for offline maps

General

New features

  • Introduce API for finding updateable regions around position

Updates

  • - Update PR template

version 0.2.3284 - 30/01/2023

Routing

Fixes

  • Fix routing with coordinates close to 0.0

Fixes

  • Fix incorrect given localization in Static Guidance Engine

version 0.2.3228 - 24/01/2023

Map

New features

  • Add field of view to CameraOptions

Search

Updates

  • Improve API state and documentation for StandardCategoryId

Fixes

  • Remove fuzzyLevel documentation
  • Remove fuzzyLevel documentation from SearchRequestSummary

New features

  • Add TomTomSDKDataManagementOffline.MapUpdateError.networkError error which is raised when Map Update operation fails due to a transient network connectivity error.

Updates

  • Update documentation in Route module

General

New features

  • Introduce API for finding updateable regions around position
  • Add proper stylization for the traffic incident markers

version 0.2.3145 - 16/01/2023

Breaking changes

  • Use InstructionPoint type for routePath property in Instruction types

version 0.2.3136 - 09/01/2023

Search

Updates

  • Make TomTomSDKDynamicData EV Charging Availability API a Public Preview API

Fixes

  • Remove OnStoreAccessChangedObserver protocol conformance from public API of TomTomSDKSearchOffline module

Fixes

  • Fix the issues in generated SSML (escaped characters)
  • Online/OfflineMapMatchingEngine stuck to route for too long after deviation.

General

Updates

  • Preparation of a common module for GA, marking public API as GA

version 0.2.3070 - 23/12/2022

Map

Updates

  • : AssetDataProvider

Fixes

  • Removed hill shading feature toggle

New features

  • Add horizon offline engine

Fixes

  • Fix replanning on language update

General

Updates

  • Update ConnectorType enum cases capitalisation

version 0.2.3010 - 16/12/2022

Map

Updates

  • Add publicly available vehicle restrictions

Fixes

  • Fix missing nullability specifiers in MapDisplayEngine
  • Fix for not working sprite caching

New features

  • Add more Horizon Elements to the Horizon Engine.
  • Add pt-BR, sv-SE, th-TH,

Updates

  • Use protocols of NDS and NavigationTileStore
  • Add additional check in Route RoadInformation

Fixes

  • Fix the naming of Route.coordinates property (it previously used some non-latin characters).
  • Update documentation references.

Location

Updates

  • Delete VehicleType from location context engines input parameter

General

Updates

  • All distributed GO SDK frameworks disabled Bitcode support

version 0.2.2929 - 12/12/2022

Map

New features

  • Add StyleContainer.init with bundle to public preview.

Search

New features

  • Add OnlineDynamicDataProviderFactory for creating implementations of DynamicData APIs

New features

  • Lane guidance is triggered properly for Routing API v2
  • Add API to get/set language

General

Updates

  • adding the Tag parameter to the annotation

Fixes

  • Added missing documentation for initializer of OnboardDataProvider

version 0.2.2884 - 05/12/2022

New features

  • Add a new API availableLanguages

Updates

  • Add language to GuidanceOptions

Fixes

  • Fix frozen instruction during navigation
  • Fix initialisation of language in TomTomDynamic guidance engine

General

New features

  • Update OnboardDataProvider
  • Add swith for zoomToRoutes when calling display routes
  • Switch for traffic incidents in the addon

Updates

  • Update public documentation
  • GoSDKRoute.Announcement.distanceInMeters became GoSDKRoute.Announcement.distance with type Measurement
  • GoSDKRoute.TollgateInstruction.tollgateName type became TextWithPhonetics.

version 0.2.2822 - 28/11/2022

Map

New features

  • Remove persistent tile cache when componentization is enabled

Updates

  • Rename Map to TomTomMap
  • Rename Map to TomTomMap
  • Rename Map to TomTomMap

Search

New features

  • Add API for custom POIs in Onboard Search

Fixes

  • Fix distance formatting in SearchUI

Routing

Updates

  • Documentation for LaneGuidance, Double to Measurement<UnitLength&gt;.

Breaking changes

  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didArrivalEngineFail(with:) has been renamed to Func NavigationErrorObserver.arrivalEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didGuidanceEngineFail(with:) has been renamed to Func NavigationErrorObserver.guidanceEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didHorizonEngineFail(with:) has been renamed to Func NavigationErrorObserver.horizonEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didLocationContextEngineFail(with:) has been renamed to Func NavigationErrorObserver.locationContextEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didMapMatchingEngineFail(with:) has been renamed to Func NavigationErrorObserver.mapMatchingEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didRouteProgressDetectionEngineFail(with:) has been renamed to Func NavigationErrorObserver.routeProgressDetectionEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didRouteReplanningEngineFail(with:) has been renamed to Func NavigationErrorObserver.routeReplanningEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didRouteTrackingEngineFail(with:) has been renamed to Func NavigationErrorObserver.routeTrackingEngineFailed(with:)
  • TomTomSDKNavigationEngine: Func NavigationErrorObserver.didStartFail(with:) has been renamed to Func NavigationErrorObserver.navigationStartFailed(with:)

Updates

  • Update documentation for NavigationConfigurationBuilder

General

Updates

  • Move guidance related common.route APIs under instruction.
  • TomTomSDKCommon: Protocol MapDisplayDataProvider has been removed
  • TomTomSDKCommon: Protocol MapDisplayDataRequestToken has been removed
  • TomTomSDKCommon: Protocol MapTileDataProviding has been removed
  • TomTomSDKCommon: Struct MapTile has been removed
  • TomTomSDKCommon: Struct MapTileOptions has been removed

Fixes

  • Rename mapsKey parameter to apiKey

version 0.2.2746 - 18/11/2022

Search

Fixes

  • Distance formatting for the SearchUI uses dedicated rules for rounding and conversion to the smaller or larger distance units.

General

Updates

  • Rename FeatureToggleService → FeatureToggle
  • Rename LocationEngine → LocationProvider
  • Rename DefaultCLLocationEngine → DefaultCLLocationProvider
  • Rename SimulatedLocationEngine → SimulatedLocationProvider
  • Rename LocationEngineObservable → LocationProviderObservable
  • Rename LocationActions.activateLocationEngine() → LocationActions.activateLocationProvider()
  • Rename LocationActions.deactivateLocationEngine() → LocationActions.deactivateLocationProvider()
  • Rename LocationActions.locationEngine → LocationActions.locationProvider
  • Rename EngineActions.locationEngine → EngineActions.locationProvider
  • Rename EngineActions.mapMatchedLocationEngine → EngineActions.mapMatchedLocationProvider
  • Rename Navigation.locationEngine → Navigation.locationProvider
  • Rename Navigation.mapMatchedLocationEngine → Navigation.mapMatchedLocationProvider
  • Rename NavigationConfiguration.locationEngine → NavigationConfiguration.locationProvider
  • Rename DataStoreUpdater.updateLocationEngine → DataStoreUpdater.updateLocationProvider
  • Rename TPEGTrafficService.updateLocationEngine → TPEGTrafficService.updateLocationProvider
  • Rename module TomTomSDKHTTPFramework → TomTomSDKNetworking
  • Rename module TomTomSDKLocation → TomTomSDKLocationProvider
  • Rename module TomTomSDKMapsDisplay → TomTomSDKMapDisplay
  • Rename module TomTomSDKOnboardStyleProvider → TomTomSDKStyleProviderOffline
  • Rename module TomTomSDKNavigationView → TomTomSDKNavigationUI
  • Rename module TomTomSDKSystemTextToSpeechEngine → TomTomSDKDefaultTextToSpeech
  • Rename module TomTomSDKOnboardMapDisplayDataProvider → TomTomSDKMapDisplayDataProviderOffline
  • Rename module TomTomSDKDynamicRoutingApi → TomTomSDKRouteReplanner
  • Rename module TomTomSDKOnlineDynamicRoutingApi → TomTomSDKRouteReplannerDefault
  • Rename module TomTomSDKInternalDynamicRoutingApi → TomTomSDKRouteReplannerInternal
  • Rename module TomTomSDKHybridDynamicRouting → TomTomSDKRouteReplannerHybrid
  • Rename module TomTomSDKOnlineDynamicData → TomTomSDKDynamicDataOnline
  • Rename module TomTomSDKOnboardDataManagement → TomTomSDKDataManagementOffline
  • Rename module TomTomSDKRouting → TomTomSDKRoutePlanner
  • Rename module TomTomSDKOnlineRouting → TomTomSDKRoutePlannerOnline
  • Rename module TomTomSDKOnboardRouting → TomTomSDKRoutePlannerOffline
  • Rename module TomTomSDKHybridRouting → TomTomSDKRoutePlannerHybrid
  • Rename module TomTomSDKOnlineReverseGeocoder → TomTomSDKReverseGeocoderOnline
  • Rename module TomTomSDKOnboardReverseGeocoder → TomTomSDKReverseGeocoderOffline
  • Rename module TomTomSDKHybridReverseGeocoder → TomTomSDKReverseGeocoderHybrid
  • Rename module TomTomSDKNavigationVisualizationAddon → TomTomSDKAddonNavigationVisualization
  • Rename module TomTomSDKRangeVisualizationAddon → TomTomSDKAddonRangeVisualization
  • Rename module TomTomSDKUIComponents → TomTomSDKCommonUI
  • Rename module TomTomSDKTPEGTraffic → TomTomSDKTrafficTPEG
  • Rename module TomTomSDKOnlineRouteProjectionEngine → TomTomSDKRouteProjectionEngineTileStore
  • Rename module TomTomSDKOnboardStructuredSearch → TomTomSDKStructuredSearchOffline
  • Rename module TomTomSDKOnboardVehicleHorizonEngine → TomTomSDKHorizonEngineOffline

Fixes

  • improving links in documentation

version 0.2.2702 - 10/11/2022

Map

Fixes

  • Update watermarks with the new icons

Removals

  • Remove OnboardDataStoreUpdateContextEngine (deprecated by DataStoreUpdater)

General

Updates

  • Make utility network-related classes from TomTomSDKCommon module internal
  • Make TomTomSDKCommmon.ValueFormattingResult internal and make all methods of TomTomSDK.ValueWithUnitFormatter internal
  • Clarify API state of Common/Measurements.

Removals

  • Remove IDGenerator class from the public API of TomTomSDKCommon module
  • Remove obsolete internal API: AudioConfigurationProvider protocol from the TomTomSDKCommon module

Fixes

  • DemoViewModel doesn’t create 2 NavigationTileStores anymore; GeoArea-related classes' visibility also fixed.

version 0.2.2581 - 28/10/2022

Map

Updates

  • Add new destination marker image and set default departure marker icon as nil

Search

New features

  • Implement fuel prices search in TomTomSDKOnlineDynamicData module

Updates

  • Add fuel prices API to TomTomSDKDynamicData module

Fixes

  • Fixed broken links in the public documentation for Search and Reverse Geocoder
  • Fixed API reference links in the Search documentation.

Routing

Updates

  • Remodel consumption and add reachable offset in route summary.

General

New features

  • Add an API to cancel the NDS map operations (NDSStore.cancelAllMapOperations).
  • Remove usage of persistent tile cache for tiles when componentization is enabled
  • Current map operation and error handling

Updates

  • Minimize usage of setter function

Fixes

  • Fix hang or crash on error from NDSStore.schedule

version 0.2.2481 - 21/10/2022

Map

Fixes

  • Set chevron as default location indicator

New features

  • Add support for region configurations.

Updates

  • Move Traffic API to Public Preview.
  • Support dynamic unit changes in GuidanceEngine

Fixes

  • Fix incorrect country announcement when crossing border

Location

New features

  • Implement Area class.

General

New features

  • Make RegionGraphNodeID implement Comparable.

version 0.2.2436 - 14/10/2022

Map

Fixes

  • Fix zoom to routes during orientation.
  • Fix marker textbox shadow
  • Display shields

Routing

Updates

  • Route.Phonetics has been updated to support phoneticAlphabet.

New features

  • Add Dynamic Routing protocol to replan route.
  • Adding periodic announcements.

Fixes

  • Now when changing the LocationEngine, the position of the chevron will correctly reset.

General

New features

  • Add an API to uninstall the NDS map region (MapOperationType.uninstall).
  • [NAV-86120] Implement DCAS-based Transport

Updates

  • Added hill shading to documentation.

version 0.2.2314 - 10/10/2022

New features

  • Expose up-to-date state of a region

General

New features

  • Add support for installing and updating of the onboard NDS map regions to the OnboardDataManagement component (see NDSStore.schedule).

Fixes

  • Notify RegionGraphObserver on map region state changes.

version 0.2.2257 - 30/09/2022

Map

Fixes

  • Use more strict types in the public API
  • Fix typo in TomTomSDKMapsDisplay.MarkerLabelOptions

Search

New features

  • Updated documentation for the Hybrid Reverse Geocoder
  • Hybrid implementation for the POI Categories search

Updates

  • Hybrid implementation for the Along Route search
  • Implemented Hybrid fuzzy Search API

Fixes

  • Use SearchResultType.street for results filtering instead of the SearchResultType.address for OnboardSearch

Routing

New features

  • [BREAKING] Introduce flat RoutePoint structure and parse charging information from RoutePoint instead of LegSummary

Fixes

  • Hiding bindings' types to avoid class name with third parties.

New features

  • Enable/disable announcement generation option

Location

Updates

  • SimulatedLocationEngine supports using current timestamps

version 0.2.2163 - 22/09/2022

Map

New features

  • Add placement anchor to MarkerOptions

Search

New features

  • Adding hybrid autocomplete search query

Updates

  • Change the public API of HybridReverseGeocoder module; Module now needs to apiKey and MapDataStore at initialization

Routing

New features

  • Plan EV Route using planRoute api

Updates

  • Use new onboard-directions increment interface
  • Use new go-sdk-onboard-directions interface

Fixes

  • Handle LHP phonetics

Version: 0.2.2095 - 16/09/2022

Map

Fixes

  • Fixed style container API key dependency issue

Search

New features

  • Publish HybridReverseGeocoder module

Fixes

  • Fixed API documentation generation for the Reverse Geocoder
  • Fixed links in the autocomplete documentation

Routing

Updates

  • Improve error handling in snippets.

Fixes

  • Do not pass customEndpoint as parameter in request.

New features

  • Expose installed state of a region

Fixes

  • Now when changing the LocationEngine, the position of the chevron will correctly reset.

version 0.2.2025 - 09/09/2022

Map

New features

  • Anchored rotation

Search

New features

  • Hybrid implementation of the Reverse Geocoder in the HybridReverseGeocoderService

Routing

Updates

  • Next instruction based on route path
  • Allow builders in copy functions to fail.
  • Use heading for route planning in sample app.

Fixes

  • Add missing signpost information and display it on NIP

Fixes

  • Add missing exit number information to NIP

version 0.2.1989 - 02/09/2022

Map

Fixes

  • Hiding hill shading by default
  • Remove ClassicSimultaneousGestureHandler and rename ModernSimultaneousGestureHandler to SimultaneousGestureHandler
  • Fix for map gestures

Search

Updates

  • Added E2E tests for Online Search
  • Added considering geoBias for CircleGeometry search and RectangleGeometry search

Routing

Updates

  • Replace Routing.LatLngBounds with Common.BoundingBox
  • Provide default arguments for Itinerary.waypoints.
  • Add heading to ItineraryPoint to use in future RoutePlanningOptions.
  • Expose traffic length information in the Route Summary

Fixes

  • TomTomRouteReplanningEngine uses vehicle heading for route refresh.
  • Only request alternatives in replanning when necessary.
  • Correct documentation for traffic incidents on routes with supporting points.
  • Expose Traffic Delay information in the onboard route and route leg summary.
  • Fixed two documentation snippets.

New features

  • Introduce TomTom Dynamic guidance engine

Updates

  • Display follow icon when the next manoeuvre is far away
  • Implement option to adapt TTS language to a message language

Fixes

  • Fix early announcements for "Bear" instructions

General

Updates

  • Completed the first round of iterations to improve the documentation to build a navigation app

version 0.2.1903 - 26/08/2022

General

New features

  • Expose onboard map structure (in English only)

Fixes

  • Camera tracking mode developer portal guide isn’t up to date

version 0.2.1869 - 19/08/2022

Map

Updates

  • Implemented style URL builder class

Fixes

  • Fixed route overview position marker vertical offset

Search

New features

  • Search POI along route by POI categories
  • Search POI along route by POI categories
  • Search POI along route by POI categories
  • Onboard POI category search
  • Onboard POI category search

Updates

  • Added possibililty to convert SearchResult to Place
  • Property Distance in Place uses Measurement<UnitLength&gt;
  • Modify names and types for the search public API properties with repsent Sets

Routing

New features

  • Routing request language

Fixes

  • Add phonetic alphabet to route generated in online mode
  • Adds missing toll payment type to toll road sections.
  • If exit direction in instruction is not specified explicitly, derive it from the driving side.
  • Request extendedSections by using ProgressPoints.

New features

  • Show next intersection name in Japan
  • Show next intersection name in Japan
  • Show next intersection name in Japan

Fixes

  • add missing road numbers for online mode
  • Fix missing manoeuvre mappings
  • Fixed the issue with ETA going down fast at the end of a long Trip.

General

Fixes

  • fix build error

version 0.2.1773 - 12/08/2022

Search

Fixes

  • Additional data API restored as part of SearchService

version 0.2.1732 - 05/08/2022

Map

New features

  • add new styles for Satellite

Search

Updates

  • Use OptionSet for resultTypes property in AutocompleteQuery struct.
  • update AutocompleteQuery struct, remove AutocompleteQueryBuilder class.

Fixes

  • Fix API documentation formatting for AlongRouteQuery struct.

New features

  • Add OnboardDataStoreUpdateContextEngine notifying map updater of position/route

Fixes

  • Fixed issue where sometimes deviation was not detected, and the route was never updated.

General

Updates

  • Remove "Go" prefix from classes.

Fixes

  • Fixed a bug where the map object and the corresponding store access handle were not refreshed after a map update.
  • Remove CLLocationCoordinate2D conformance to Hashable, Decodable and Encodable.

version 0.2.1661 - 29/07/2022

Map

New features

  • MapVisualisation tile provider integrated with StoreAccessSync.

Updates

  • NDSStore and NDSStoreAccess are now passed behind corresponding protocols instead of as concrete classes.
  • NDSStore and NDSStoreAccess are now passed behind corresponding protocols instead of as concrete classes.

Search

Updates

  • Added charging park to the Fuzzy Search response

Removals

  • JSON types removed from the Online Search API

Routing

Fixes

  • Disabled activity indicator when avoidance route gets loaded

New features

  • SoftDR (extrapolate) support in OnboardMapMatchingEngine
  • Prediction support in OnboardMapMatchingEngine
  • SoftDR (extrapolate) support in OnboardMapMatchingEngine
  • Prediction support in OnboardMapMatchingEngine

Updates

  • Now RouteReplanningEngine has only a generic replan method instead of replanToRefresh or replanOnDeviation.
  • Removed onError closure callback from start method in Navigation class. Added didStartOnRoute interface in TomTomNavigationDelegate. Added didStartFailWithError inteface in TomTomNavigationErrorDelegate
  • Now RouteReplanningEngine has only a generic replan method instead of replanToRefresh or replanOnDeviation.

Fixes

  • Fix missing map references after replanning route.

General

New features

  • Added TTMeasurement Decorator for Measurement object, this enables easy conversion and initialization for Measurements.
  • Added TTMeasurement Decorator for Measurement object, this enables easy conversion and initialization for Measurements.

Removals

  • Measurement convenience initializers. This would possibly create conflicts with other SDKs.
  • Measurement convenience initializers. This would possibly create conflicts with other SDKs.

version 0.2.1607 - 20/07/2022

Fixes

  • Fix missing map references after replanning route.

version 0.2.1588 - 15/07/2022

Map

Fixes

  • Onboard map not shown on devices with non-latin1 locale

General

Updates

  • A new tutorial to build a navigation app was created.

version 0.2.1538 - 08/07/2022

Map

Fixes

  • Fixed missing country names on map by setting a default language
  • Improve naming in the public API types and methods List of changes:
  • Fixed issue when single tap was reported along to long press gesture

Search

Updates

  • Added mappings for the onboard reverse geocoder response for the folowwing properties: municipalitySubdivision,neighborhoodName and countrySubdivisionCode

Routing

Updates

  • Made "language" parameter in RoutingOptions default to device language.

New features

  • Added the possibility to specify the language in TomTomGuidanceEngine. If not specified device language will be used.

Updates

  • Add predictions property to MapMatchingResult struct

Fixes

  • Fixed crash where having 12H instead of 24H set up in date settings would cause the app to randomly crash when starting navigation.
  • Return the correct error for computation timeout.

General

Updates

  • Api reference documentation updated for TomTomSDKRoute module.

version 0.2.1455 - 01/07/2022

Map

New features

  • Dedicated sky color for light/dark mode
  • createDirectionUpFollowCameraOperator() is expose in GO SDK

New features

  • Now when a location is map matched, it will also return additional information about the route i’ds being followed.

Fixes

  • Added unit system setting on navigation Views. Now it is possible to set different imperial or metric units.

General

Updates

  • Project setup guides updated with information about required credentials for navigation modules
  • Separate project setup guides for maps and navigation.

Fixes

  • Fix crash when removing observer twice.

version 0.2.1400 - 21/06/2022

Routing

Updates

  • Improve documentation of RoutingService/RoutingOptions

version 0.2.1384 - 17/06/2022

Map

Updates

  • Added Support for V2.1 styles
  • Update layer_mapping.json
  • Update to CameraOptions and CameraProperties documentation
  • Replace Objective-C types used in public Swift API

Fixes

  • Error Handler for Invalid Zoom Level Configurations

Search

Updates

  • Added Search UI documentation
  • Add experimental API annotation to public APIs in GoSDKOnboardReverseGeocoder and GoSDKOnboardSearch
  • Add public preview API annotations to the GoSDKOnlineReverseGeocoder framework
  • Add public preview API annotation to APIs in the GoSDKSearch framework.
  • Add public preview API annotations to public API in the GoSDKOnlineSearch framework.

Routing

New features

  • Provide NDS map references in onboard routes
  • Provide NDS map references in onboard routes
  • Avoid areas in onboard routing
  • Avoid areas in onboard routing
  • Now, while planning a route, the correct form to calculate the route, regular or extended, is used depending on the options set.

Updates

  • Fixed misspelling in PedestrianSection struct name
  • Add carpool section type and urban section type to SectionType for the routing request.

Removals

  • Remove redundant trafficDelayInSeconds from
  • Remove redundant travelTimeInSeconds from
  • Remove redundant lengthInMeters
  • Remove unsupported TransportMode

Fixes

  • RouteSummaryView: fix frame with show correct view
  • Fix wrong distance to instruction after refreshing route.
  • Fixes unwanted departure guidance after route replanning.
  • Fix for distances to instructions being incorrect after updating navigatino with a better route.

General

Updates

  • Updated NK2 iOS component to Cross-platform BoM 77.19.10
  • Add carpool sections and urban sections to GoSDKRoute.Route

Fixes

  • Fixed crash when location predictions with negative speed are generated

Version 0.2.1182 - 27/05/2022

Map

Fixeses

  • Fixed a crash when map view is deallocated
  • Fixed a crash caused by mapKey placeholder not replaced when loading custom style
  • Fixed an incorrect route bringToFront behaviour resulting in inability to change route order to front one

Search

Deprecations

  • the following calls in Search API are now discontinued: downloadPoiPhoto, poiDetailsSearch

iOS version 0.2.1139

Updates:

  • information about missing layers exposed in Diagnostic API

iOS version 0.2.1126

Bug fixes:

  • Fix for a crash when the useMetalGraphicsBackend feature toggle is enabled
  • Fix for a crash when changing Custom style
  • Fix for incorrect route replanning reason ".unreachable"
  • Fix for a speed bubble colour not depended on current speed and speed limit
  • Fix for misspelled "Engine" in API DefaultMapMatchingEnigne

iOS version 0.2.1101

Updates:

  • Moved GoSDKCommon.Route related classes/protocols to new GoSDKRoute module

iOS version 0.2.1092

Bug fixes:

  • Fix for incorrect lane guidance after route replanning

iOS version 0.2.1050

Updates:

  • Improved documentation for map overlays
  • Added documentation for route replanning after deviation
  • Added voice instructions documentation
  • Added documentation guide for pins shrinking and fading

Bug fixes:

  • Fix for map springing back in opposite direction after panning
  • Fix for occasional discrepancies in directional arrows
  • Fix for polar cups not matching surrounding colour
  • Fix for Camera Operator zooming not working
  • Fix for logo visible briefly during map initialization

iOS version 0.2.1019

Bug fixes:

  • Fix for no arrival announcement

iOS version 0.2.967

New features:

  • Switch to online fonts
  • Search UI
  • Map overlays
  • Pin shrinking and fading
  • Update of map’s style file
  • Add "Route updated" notification to the UI component

Updated features:

  • Destruction of services
  • Change type of GeoLocation.timeMillis property to "Date"
  • Metric ranges for for visual instructions in NIP are not according to the spec
  • Imperial ranges for for visual instructions in NIP are not according to the spec
  • No route planning in progress screen

Bug fixes:

  • Documentation of AccuracyIndicatorType
  • Wrong location indicator after changing styleMode
  • Style Parsing Error with custom map style
  • Street name font size won’t change to driving view zoom level
  • Map gestures not working correctly
  • In Driving mode, panning of map always results in map moving down-side
  • First SLG infois not displayed in the route
  • Incorrect TTS translation for 1km
  • SLG triggering points are not same as android
  • Pan gesture works incorrectly when in camera follow the chevron mode
  • Verbal messages duplicated after route refresh