v2.9.0-rc.1
Pre-release
Pre-release
mapbox-github-ci-writer-public-1
released this
04 Nov 15:04
·
4 commits
to release-v2.9
since this release
Changes since v2.9.0-beta.4:
Map
- Traffic lights, stop signs, yield signs, and railroad crossings now appear along the route during turn-by-turn navigation. To disable these icons, set the
NavigationViewController.annotatesIntersectionsAlongRoute
andCarPlayNavigationViewController.annotatesIntersectionsAlongRoute
properties tofalse
. (#4185) - Additional parameters were added to
FloatingButton.rounded(image:selectedImage:size:type:imageEdgeInsets:cornerRadius)
to be able to provide button type, button image edge insets and corner radius. (#4060, #4157) FloatingButton
no longer contains corner radius shadow, border is applied instead. (#4060)- Added the
NavigationViewControllerDelegate.navigationViewController(_:didSelect:)
andNavigationViewControllerDelegate.navigationViewController(_:didSelect:)
methods that allow selection of the waypoint and continuous alternative. (#4175) NavigationMapView.showcase(_:routesPresentationStyle:legIndex:animated:duration:completion:)
now contains alegIndex
parameter that allows highlighting one leg more prominently than other legs of the route. (#4211)- Fixed an issue where the route line with no traffic congestion data and multiple legs wasn't shown correctly. (#4217)
Preview
- Added the
PreviewViewController
that along with the ability to display a route preview map allows to present banners with additional information. Such banners should conform toBanner
protocol. The Mapbox Navigation SDK also provides default banners that allow to present address of the final destination (DestinationPreviewViewController
) and route information like estimated time of arrival, total duration and distance (RoutePreviewViewController
). ThePreviewViewControllerDelegate
protocol allows to observeBanner
presentation and dismissal events. Seamless transition betweenPreviewViewController
andNavigationViewController
can be reached by usingUIViewControllerTransitioningDelegate
and replacing existingNavigationViewController.navigationMapView
instance with the one that is used inPreviewViewController
. (#4227, #4188)
Banners and guidance instructions
- Fixed an issue where top and bottom banners were not presented when starting active navigation session. (#4222)
Location tracking
- Fixed an issue where the user’s location history was sometimes matched to unnavigable paths, leading to unreliable location snapping. (#4191)
- Fixed an issue where the
RoadObjectMatcher.matchOpenLR(location:identifier:)
method would incorrectly match some TPEG OpenLR identifiers. (#4191) - Added
HistoryReader
for parsing history files. (#4194)
Routing
IndexedRouteResponse
is now the preferred way for setting up routing information for navigation.NavigationViewController
,MapboxNavigationService
,Router
andRoutingProvider
are updated to accomodate this change. (#4127)
User feedback
- The MapboxMobileEvents dependency is no longer used. Feedback events are now handled by MapboxCommon. (#4011)
- Deprecated
NavigationEventsManager.init(activeNavigationDataSource:passiveNavigationDataSource:accessToken:mobileEventsManager:)
in favor ofNavigationEventsManager.init(activeNavigationDataSource:passiveNavigationDataSource:accessToken:)
. (#4011)
Predictive caching
- Implemented predictive cache with
TilesetDescriptor
so that volatile sources are not loaded unexpectedly. (#4213) - Deprecated
PredictiveCacheManager.init(predictiveCacheOptions:styleSourcePaths:)
andPredictiveCacheManager.init(predictiveCacheOptions:mapOptions:)
in favor ofPredictiveCacheManager.init(predictiveCacheOptions:cacheMapOptions:)
. (#4213) - Added
PredictiveCacheMapsOptions
(map specific, that also allow to specify zoom levels for which the map tiles should be cached) andPredictiveCacheNavigationOptions
(navigation specific) available through thePredictiveCacheOptions
. (#4213) - Deprecated
PredictiveCacheOptions.currentLocationRadius
,PredictiveCacheOptions.routeBufferRadius
,PredictiveCacheOptions.destinationLocationRadius
,PredictiveCacheOptions.maximumConcurrentRequests
. UsePredictiveCacheOptions.predictiveCacheNavigationOptions
andPredictiveCacheOptions.predictiveCacheMapsOptions
instead for separate predictive cache configuration for maps and navigation. (#4213) - Added
PredictiveCacheManager.updateMapControllers(cacheMapOptions:)
for cashing map styles after they are loaded. (#4213)
Other changes
- Fixed an issue where the rerouting audio cue stopped background audio. (#3642)
- Fixed an issue where the rerouting audio cue played even if
RouteVoiceController.playRerouteSound
was set tofalse
. (#4214) - Added
BorderCrossing.init(from:to:)
to allow creation ofBorderCrossing
publicly. (#4226)
Documentation is available online or within Xcode.