Traffic
public protocol Traffic : AnyObject
This is the public interface for the Traffic Data Provider in NavSDK. This interface can be passed to other components in NavSDK that work with traffic data.
Important
This is a Public Preview API. It may be changed or removed at any time.-
Indicates the traffic provider connectivity status.
Important
This is a Public Preview API. It may be changed or removed at any time.trueif connection has been established,falseotherwise.Declaration
Swift
var isConnected: Bool { get } -
Number of traffic events currently known by the client.
Important
This is a Public Preview API. It may be changed or removed at any time.Declaration
Swift
var trafficEventCount: Int { get } -
Updates the traffic client’s
Locale.Important
This is a Public Preview API. It may be changed or removed at any time.
Note
Localeis used to select the desired locale when receiving multi-lingual data or when extracting textual location details from the map.Declaration
Swift
func updateLocale(_ locale: Locale)Parameters
localeThe new
Locale. -
Sets a new location provider.
Important
This is a Public Preview API. It may be changed or removed at any time.
Declaration
Swift
func updateLocationProvider(_ locationProvider: LocationProvider)Parameters
locationProviderThe new
LocationProvider. -
Updates the list of routes for which the client is interested in receiving traffic along the route.
Important
This is a Public Preview API. It may be changed or removed at any time.Providing an empty list disables traffic along the route. It can be enabled again by providing new routes via this method.
Note that the availability of traffic along the route depends on the currently active traffic provider.
Receiving traffic along a navigated route can be useful to display traffic information for the route. However, it can also have a negative impact on planning routes onboard or finding faster alternatives.
Throws
An error if routes cannot be updated.Declaration
Swift
func updateRoutesForTraffic(_ routes: [[CLLocationCoordinate2D]]) throwsParameters
routesThe list of route poly-lines for which to receive and update traffic information.
-
trafficEvents(for:Asynchronous) Gets traffic events within a boundig box .
Important
This is a Public Preview API. It may be changed or removed at any time.
Throws
An error if cannot get
TrafficEvents.Declaration
Swift
func trafficEvents(for boundingBox: BoundingBox) async throws -> [TrafficEvent]Parameters
boundingBoxThe area to look for the
TrafficEvents.Return Value
Array of
TrafficEventswithin the givenboundingBox. -
Asynchronously calls a completion callback with a result containing
TrafficEventswithin the givenboundingBox, or an error.Important
This is a Public Preview API. It may be changed or removed at any time.
Declaration
Swift
func getTrafficEvents( for boundingBox: BoundingBox, completion: @escaping (Result<[TrafficEvent], Error>) -> () )Parameters
boundingBoxThe area to look for the
TrafficEvents.completionThe completion handler to call with the result. The handler may be executed on a background thread.
-
Adds an observer.
Important
This is a Public Preview API. It may be changed or removed at any time.Important
An attempt to add an observer from theonTrafficUpdated()implementation of a registered observer may result in a deadlock.Declaration
Swift
func addObserver(_ observer: TrafficUpdateObserver)Parameters
observerAn instance of
TrafficUpdateObserverto add. -
Removes an observer.
Important
This is a Public Preview API. It may be changed or removed at any time.Important
An attempt to remove an observer from theonTrafficUpdated()implementation of a registered observer may result in a deadlock.Declaration
Swift
func removeObserver(_ observer: TrafficUpdateObserver)Parameters
observerAn instance of
TrafficUpdateObserverto remove.
TomTom SDK for iOS (TomTomSDKMapMatchingEngineHybrid 0.38.0-rc01 Docs)
Traffic