Skip to content

Releases: mapbox/mapbox-navigation-android

Navigation SDK v3.11.1

12 Aug 09:08
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.11.1 - 08 August, 2025

Features

Bug fixes and improvements

  • Avoid unnecessary navigation arrow GeoJSON updates
  • Optimize the MapboxRouteArrowView to skip re-rendering arrows that have not changed.
  • Use the enhancedLocation in the RoadCamerasManager class to get a more accurate current speed for the vehicle.

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

Navigation SDK v3.11.0

01 Aug 18:12
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.11.0 - 01 August, 2025

Features

  • Added MapboxSpeedZoneInfo class to represent speed zone information. Available through UpcomingCamerasObserver::onSpeedZoneProgress and RoadCamerasMapCallback::onSpeedZoneProgress callbacks.
  • Added experimental support for ADAS tiles in the predictive cache. See PredictiveCacheNavigationOptions for more information.
  • Added support for Android 16 KB page-size devices. To consume SDK compatible with NDK 27 you need to add -ndk27 suffix to the artifact name, for example, com.mapbox.navigationcore:navigation -> com.mapbox.navigationcore:navigation-ndk27.
  • Added method overload TilesetDescriptorFactory#getLatest(Boolean) that allows to specify whether to include ADAS tiles.
  • Extracted TTS functionality into a new module audio.
  • DR improvements - more robust models for GNSS trust, road calibration, and wheel speed trust;
  • Improve main thread utilization by removing unintended locks (visible on systems with overloaded CPU)
  • Disable the defaults for collection of tunnel/bridge subgraphs in free drive. The clients will need to specify explicitly which objects to collect via AlertServiceOptions in the public SDK interface.
  • Added support of immediate update of location puck bearing in [NavigationLocationProvider] in case of overlapping key points.
  • RoadCamerasManager in active guidance now relies on new road_camera Directions API annotation, which improves the performance of the camera data retrieval and quality of the data.
  • Added MapboxRoadCamera::activeGuidanceInfo, containing information about the route id, leg index, geometry index and step intersection of the camera in active guidance.
  • ⚠️ Breaking changes in Experimental API. MapboxEvSearchClientFactory.#getInstance() no longer accepts access token as a parameter. The default MapboxOptions.accessToken will be used.
  • CarPlaceSearchOptions.accessToken and corresponding builder function has been deprecated because accessToken is no longer in use as the search component now uses the default MapboxOptions.accessToken.
  • Used legacy/custom date primitives in EV modules to support older Android API levels.
  • Added DriverNotification, DriverNotificationProvider interfaces with EvBetterRouteNotificationProvider and SlowTrafficNotificationProvider implementations. Add new DriverNotificationManager API to attach or detach providers and DriverNotificationManager.observeDriverNotification() to handle the flow of driver notifications.
  • Added default location providers.
  • Added EvBusyChargingStationNotificationProvider to notify when the EV is charging station is busy and propose alternative route.
  • Added experimental NavigationPerformance#performanceTracingEnabled which enables/disables internal performance trace sections.
  • Add MapboxRoadCamera::inOnRoute flag which indicates if the roiad camera is on the current route.
  • Add MapboxRoadCamerasDisplayConfig::showOnlyOnRoute config parameter to display only road cameras on the route.
  • Added support for EV charge point tariffs accessible via EvStation.tariffs.
  • New experimental property LocationMatcherResult.correctedLocationData is available.
  • New experimental function GraphAccessor.getAdasisEdgeAttributes() is available. It returns ADAS attributes for the requested edge.
  • Expose road type in the MapboxRoadCamera
  • Added support for section control speed cameras.
  • Extended MapboxTripProgressApi to provide information about time zone at leg/route destination.
  • Added TripProgressUpdateFormatter.getEstimatedTimeToArrival overload that formats ETA using a given time zone.
  • Added curvatures support on intersections in ADAS tiles
  • Reduced amount of error logs
  • Added periodic logs of Navigator/Cache configs
  • Added support for wheel speed usage during no signal simulation to determine passed distance for mobile profile
  • Improved off road transitions
  • ⚠️ Breaking changes in Experimental API MapboxRouteCalloutView#renderCallouts(RouteCalloutData,MapboxRouteLineView). It's required to associate Route line with Callout View.
  • Added experimental SearchAlongRouteUtils class to optimize search along routes scenario by providing optimally selected points.
  • Added experimental RoutingTilesOptions#hdTilesOptions to configure HD tiles endpoint.
  • DataInputsManager now can be used from any thread.
  • Added experimental Road Cameras modules to provide notifications about road cameras along the route and show them on the map.
  • Added option to display the route line with a blur effect.
  • Added experimental functions MapboxNavigation#startTripSessionWithPermissionCheck() and MapboxNavigation#startReplayTripSessionWithPermissionCheck that immediately throw IllegalStateException if they are called with withForegroundService parameter set to true, but Android foreground service permissions requirements are not met.
  • Added support for SVG junction views, see MapboxJunctionApi#generateJunction(instructions: BannerInstructions, @JunctionViewFormat format: String, consumer: MapboxNavigationConsumer<Expected<JunctionError, JunctionViewData>>).
  • Added experimental NavigationRoute#routeRefreshMetadata which contains data related to refresh of the route object.
  • Signature of experimental EtcGateApi#updateEtcGateInfo function has been changed, now it accepts EtcGateApi.EtcGateInfo as a function parameter.
  • Experimental Data Inputs functionality has been removed from the core module to a separate datainputs module (MapboxNavigation#dataInputs and everything from the package com.mapbox.navigation.datainputs have been removed). Contact us to get more information on how to get access to the module.
  • Experimental Adasis functionality has been removed from the core module (MapboxNavigation's functions setAdasisMessageObserver, resetAdasisMessageObserver, updateExternalSensorData, and GraphAccessor#getAdasisEdgeAttributes have been removed). Contact us in case you're interested in ADASIS functionality.
  • Added experimental RoutingTilesOptions#fallbackNavigationTilesVersion which lets define version of navigation tiles to fallback in case of offline routing failure with navigation tiles defined in RoutingTilesOptions#tilesVersion.
  • Added experimental MapboxRouteLineViewOptions#fadeOnHighZoomsConfig and MapboxRouteArrowOptions#fadeOnHighZoomsConfig to configure smooth fading out of route line or/and arrows on high zoom levels.
  • The PredictiveCacheController(PredictiveCacheOptions) constructor is now deprecated. Use PredictiveCacheController(MapboxNavigation, PredictiveCacheOptions) instead.
  • Added NavigationScaleGestureHandlerOptions#followingRotationAngleThreshold that define threshold angle for rotation for FOLLOWING Navigation Camera state.
  • Added the ability to filter road names based on the system language
  • com.mapbox.navigation.base.road.model.RoadComponent objects that contain only slashes in their text are filtered out
  • Now EHorizonResultType.Type has a new element called EHorizonResultType.NOT_AVAILABLE.
  • Old MapboxNavigation.postUserFeedback() functions have been deprecated, use an overloading that accepts UserFeedback as a parameter.
  • Introduce MapboxRouteCalloutApi and MapboxRouteCalloutView to attach callouts to route lines with info about duration
  • Optimized memory usage in Directions API model classes by interning frequently occurring strings in JSON.
  • Added experimental MapboxNavigation#replanRoute to handle cases when user changes route options during active guidance,
    for example enabling avoid ferries.
  • Added DataInputsManager to allow the provision of data from external sensors to the navigator, see MapboxNavigation.dataInputsManager. Experimental EtcGateInfo has been moved to com.mapbox.navigation.core.datainputs package. EtcGateApi has been deprecated.
  • Removing the ExperimentalMapboxNavigationAPI flag for Search predictive cache.
  • [BREAKING CHANGE] PredictiveCacheOptions.unrecognizedTilesetDescriptorOptions has been renamed to PredictiveCacheOptions.predictiveCacheSearchOptionsList. Additionally, PredictiveCacheUnrecognizedTilesetDescriptorOptions has been renamed to PredictiveCacheSearchOptions. Now, only search-related options can be passed to PredictiveCacheSearchOptions.
  • Introduced experimental traffic adjustment mechanism during a drive and added TrafficOverrideOptions to control this feature
  • Changed Alternatives that deviate close to a destination point are removed before a fork is reached.
  • Added RerouteStrategyForMapMatchedRoutes to RerouteOptions. Reroute option enableLegacyBehaviorForMapMatchedRoute was removed, use NavigateToFinalDestination strategy instead.

Bug fixes and improvements

  • Optimized camera animations that involve significant zoom change.
  • Don't reset the re-route request when on-route/off-route events are flaky.
  • Improve visual Turn Experience in Active Guidance for high-frequency input
  • Adjust remaining distance on leg completion
  • Fixed an issue where the closer part of route line might have been overlapped by a farther part in case they covered the same space within a single leg (e. g. U-turns on narrow roads).
  • Obfuscate access_token in the RoadShield logs
  • Fixed an issue where after a reroute the vanishing point on the route line might have been ahead of the actual vehicle's position.
  • Added HistoryRecorderOptions#shouldRecordRouteLineEvents property to enable/disable route line events collection for manual recording (see CopilotOptions#shouldRecordRouteLineEvents for the same functionality with Copilot); it is disabled by default.
  • Fixed an issue where the Speed Camera notification would appear prematurely when the car's speed was 0.
  • Fix Route replayer: normalize ...
Read more

Navigation SDK v3.11.0-rc.1

30 Jul 09:53
Compare
Choose a tag to compare
Pre-release

Navigation SDK Core Framework 3.11.0-rc.1 - 21 July, 2025

Features

Bug fixes and improvements

  • Obfuscate access_token in the RoadShield logs

Known issues ⚠️

Other changes

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v11.14.0-rc.1 (release notes)
  • Mapbox Navigation Native v324.14.0-rc.1
  • Mapbox Core Common v24.14.0-rc.1
  • Mapbox Java v7.4.0 (release notes)

Navigation SDK v3.10.2

30 Jul 09:52
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.10.2 - 29 July, 2025

Features

Bug fixes and improvements

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v11.13.5 (release notes)
  • Mapbox Navigation Native v324.13.5
  • Mapbox Core Common v24.13.5
  • Mapbox Java v7.4.0 (release notes)

Navigation SDK v3.10.1

23 Jul 12:37
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.10.1 - 23 July, 2025

Features

Bug fixes and improvements

  • Fixed an issue where the Speed Camera notification would appear prematurely when the car's speed was 0.
  • Improve locations simulation during signal outage in tunnels.

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v11.13.4 (release notes)
  • Mapbox Navigation Native v324.13.4
  • Mapbox Core Common v24.13.4
  • Mapbox Java v7.4.0 (release notes)

Mapbox Navigation SDK 2.20.4

18 Jul 12:20
Compare
Choose a tag to compare

Mapbox Navigation SDK 2.20.4 - 18 July, 2025

Changelog

Changes between v2.20.3 and v2.20.4

Bug fixes and improvements

  • Fixed crash on ManeuverViewBinder with TransitionManager#go(Scene). #7908

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v10.18.3 (release notes)
  • Mapbox Navigation Native v206.1.1
  • Mapbox Core Common v23.10.1
  • Mapbox Java v7.1.0 (release notes)

Navigation SDK v3.9.5

17 Jul 13:57
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.9.5 - 17 July, 2025

Bug fixes and improvements

  • Fix issue for customers who are unable to compile due to codesign issues.

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v11.12.4 (release notes)
  • Mapbox Navigation Native v324.12.5
  • Mapbox Core Common v24.12.5
  • Mapbox Java v7.4.0 (release notes)

Navigation SDK v3.11.0-beta.1

08 Jul 08:57
Compare
Choose a tag to compare
Pre-release

Navigation SDK Core Framework 3.11.0-beta.1 - 04 July, 2025

Features

  • Added support for Android 16 KB page-size devices. To consume SDK compatible with NDK 27 you need to add -ndk27 suffix to the artifact name, for example, com.mapbox.navigationcore:navigation -> com.mapbox.navigationcore:navigation-ndk27.
  • Added method overload TilesetDescriptorFactory#getLatest(Boolean) that allows to specify whether to include ADAS tiles.
  • Extracted TTS functionality into a new module audio.
  • DR improvements - more robust models for GNSS trust, road calibration, and wheel speed trust;
  • Improve main thread utilization by removing unintended locks (visible on systems with overloaded CPU)
  • Disable the defaults for collection of tunnel/bridge subgraphs in free drive. The clients will need to specify explicitly which objects to collect via AlertServiceOptions in the public SDK interface.
  • Added support of immediate update of location puck bearing in [NavigationLocationProvider] in case of overlapping key points.
  • RoadCamerasManager in active guidance now relies on new road_camera Directions API annotation, which improves the performance of the camera data retrieval and quality of the data.
  • Added MapboxRoadCamera::activeGuidanceInfo, containing information about the route id, leg index, geometry index and step intersection of the camera in active guidance.

Bug fixes and improvements

  • Fixed an issue where after a reroute the vanishing point on the route line might have been ahead of the actual vehicle's position.
  • Added HistoryRecorderOptions#shouldRecordRouteLineEvents property to enable/disable route line events collection for manual recording (see CopilotOptions#shouldRecordRouteLineEvents for the same functionality with Copilot); it is disabled by default.
  • Fixed an issue where the Speed Camera notification would appear prematurely when the car's speed was 0.
  • Fix Route replayer: normalize bearing values to be in the range of [0..360) degrees.
  • Fixed a bug where alternative routes from RoutesUpdatedResult#ignoredRoutes were set to RoutesUpdatedResult#navigationRoutes after the first route progress update.
  • Fix when already passed part of route appears behind CCP

Known issues ⚠️

Other changes

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

Navigation SDK v3.10.0

19 Jun 17:11
Compare
Choose a tag to compare

Navigation SDK Core Framework 3.10.0 - 19 June, 2025

Features

  • Improve road graph calibration in Dead Reckoning for more accurate localization in tunnel and urban canyon.
  • Improve wheel speed filtering for a more accurate trajectory in Dead Reckoning.
  • Introduced performance trace points for navigation
  • Added filtering inaccurate wheel speed for Dead Reckoning to reduce possible location jumps in case of wheel slippage
  • Added provide the latest tiles version when tileset descriptors requested with empty version.
  • Added support for delta updates for routing and ADAS tiles
  • Added reading of life-traffic-service and reporting them to ADASIS traffic events
  • Improved heading interpolation
  • Now SensorData.Weather can be instantiated with a list of @WeatherCondition.Type or detailed weather information represented by @WeatherDetail.Type.
  • ⚠️ Breaking changes in Experimental API. SensorData.Weather no longer has public property conditionType
  • RoadCamerasManager in active guidance now relies on new road_camera Directions API annotation, which improves the performance of the camera data retrieval and quality of the data.
  • Added MapboxRoadCamera::activeGuidanceInfo, containing information about the route id, leg index, geometry index and step intersection of the camera in active guidance.
  • Added support of immediate update of location puck bearing in [NavigationLocationProvider] in case of overlapping key points.
  • ⚠️ Breaking changes in Experimental API. MapboxEvSearchClientFactory.#getInstance() no longer accepts access token as a parameter. The default MapboxOptions.accessToken will be used.
  • CarPlaceSearchOptions.accessToken and corresponding builder function has been deprecated because accessToken is no longer in use as the search component now uses the default MapboxOptions.accessToken.
  • Used legacy/custom date primitives in EV modules to support older Android API levels.
  • Added DriverNotification, DriverNotificationProvider interfaces with EvBetterRouteNotificationProvider and SlowTrafficNotificationProvider implementations. Add new DriverNotificationManager API to attach or detach providers and DriverNotificationManager.observeDriverNotification() to handle the flow of driver notifications.
  • Added default location providers.
  • Added EvBusyChargingStationNotificationProvider to notify when the EV is charging station is busy and propose alternative route.
  • Added experimental NavigationPerformance#performanceTracingEnabled which enables/disables internal performance trace sections.
  • Add MapboxRoadCamera::inOnRoute flag which indicates if the roiad camera is on the current route.
  • Add MapboxRoadCamerasDisplayConfig::showOnlyOnRoute config parameter to display only road cameras on the route.
  • Added support for EV charge point tariffs accessible via EvStation.tariffs.
  • New experimental property LocationMatcherResult.correctedLocationData is available.
  • New experimental function GraphAccessor.getAdasisEdgeAttributes() is available. It returns ADAS attributes for the requested edge.
  • Expose road type in the MapboxRoadCamera
  • Added support for section control speed cameras.
  • Extended MapboxTripProgressApi to provide information about time zone at leg/route destination.
  • Added TripProgressUpdateFormatter.getEstimatedTimeToArrival overload that formats ETA using a given time zone.
  • Added curvatures support on intersections in ADAS tiles
  • Reduced amount of error logs
  • Added periodic logs of Navigator/Cache configs
  • Added support for wheel speed usage during no signal simulation to determine passed distance for mobile profile
  • Improved off road transitions
  • ⚠️ Breaking changes in Experimental API MapboxRouteCalloutView#renderCallouts(RouteCalloutData,MapboxRouteLineView). It's required to associate Route line with Callout View.
  • Added experimental SearchAlongRouteUtils class to optimize search along routes scenario by providing optimally selected points.
  • Added experimental RoutingTilesOptions#hdTilesOptions to configure HD tiles endpoint.
  • DataInputsManager now can be used from any thread.
  • Added experimental Road Cameras modules to provide notifications about road cameras along the route and show them on the map.
  • Added option to display the route line with a blur effect.
  • Added experimental functions MapboxNavigation#startTripSessionWithPermissionCheck() and MapboxNavigation#startReplayTripSessionWithPermissionCheck that immediately throw IllegalStateException if they are called with withForegroundService parameter set to true, but Android foreground service permissions requirements are not met.
  • Added support for SVG junction views, see MapboxJunctionApi#generateJunction(instructions: BannerInstructions, @JunctionViewFormat format: String, consumer: MapboxNavigationConsumer<Expected<JunctionError, JunctionViewData>>).
  • Added experimental NavigationRoute#routeRefreshMetadata which contains data related to refresh of the route object.
  • Signature of experimental EtcGateApi#updateEtcGateInfo function has been changed, now it accepts EtcGateApi.EtcGateInfo as a function parameter.
  • Experimental Data Inputs functionality has been removed from the core module to a separate datainputs module (MapboxNavigation#dataInputs and everything from the package com.mapbox.navigation.datainputs have been removed). Contact us to get more information on how to get access to the module.
  • Experimental Adasis functionality has been removed from the core module (MapboxNavigation's functions setAdasisMessageObserver, resetAdasisMessageObserver, updateExternalSensorData, and GraphAccessor#getAdasisEdgeAttributes have been removed). Contact us in case you're interested in ADASIS functionality.
  • Added experimental RoutingTilesOptions#fallbackNavigationTilesVersion which lets define version of navigation tiles to fallback in case of offline routing failure with navigation tiles defined in RoutingTilesOptions#tilesVersion.
  • Added experimental MapboxRouteLineViewOptions#fadeOnHighZoomsConfig and MapboxRouteArrowOptions#fadeOnHighZoomsConfig to configure smooth fading out of route line or/and arrows on high zoom levels.
  • The PredictiveCacheController(PredictiveCacheOptions) constructor is now deprecated. Use PredictiveCacheController(MapboxNavigation, PredictiveCacheOptions) instead.
  • Added NavigationScaleGestureHandlerOptions#followingRotationAngleThreshold that define threshold angle for rotation for FOLLOWING Navigation Camera state.
  • Added the ability to filter road names based on the system language
  • com.mapbox.navigation.base.road.model.RoadComponent objects that contain only slashes in their text are filtered out
  • Now EHorizonResultType.Type has a new element called EHorizonResultType.NOT_AVAILABLE.
  • Old MapboxNavigation.postUserFeedback() functions have been deprecated, use an overloading that accepts UserFeedback as a parameter.
  • Introduce MapboxRouteCalloutApi and MapboxRouteCalloutView to attach callouts to route lines with info about duration
  • Optimized memory usage in Directions API model classes by interning frequently occurring strings in JSON.
  • Added experimental MapboxNavigation#replanRoute to handle cases when user changes route options during active guidance,
    for example enabling avoid ferries.
  • Added DataInputsManager to allow the provision of data from external sensors to the navigator, see MapboxNavigation.dataInputsManager. Experimental EtcGateInfo has been moved to com.mapbox.navigation.core.datainputs package. EtcGateApi has been deprecated.
  • Removing the ExperimentalMapboxNavigationAPI flag for Search predictive cache.
  • [BREAKING CHANGE] PredictiveCacheOptions.unrecognizedTilesetDescriptorOptions has been renamed to PredictiveCacheOptions.predictiveCacheSearchOptionsList. Additionally, PredictiveCacheUnrecognizedTilesetDescriptorOptions has been renamed to PredictiveCacheSearchOptions. Now, only search-related options can be passed to PredictiveCacheSearchOptions.
  • Introduced experimental traffic adjustment mechanism during a drive and added TrafficOverrideOptions to control this feature
  • Changed Alternatives that deviate close to a destination point are removed before a fork is reached.
  • Added RerouteStrategyForMapMatchedRoutes to RerouteOptions. Reroute option enableLegacyBehaviorForMapMatchedRoute was removed, use NavigateToFinalDestination strategy instead.

Bug fixes and improvements

  • Fixed cancel reroute on setting a route.
  • Fixed an issue where after a reroute the vanishing point on the route line might have been ahead of the actual vehicle's position.
  • Fixed incorrect route request with user added charging station
  • Fixed incorrect edge expansion during simulation by teleporting
  • Improved behavior on roundabouts: avoid cases when the vehicle position circles around the roundabout in case of matching errors
  • Fixed re-enabling route refresh after leg change
  • Removed caching of mapbox access token
  • Fixed a bug where alternative routes from RoutesUpdatedResult#ignoredRoutes were set to RoutesUpdatedResult#navigationRoutes after the first route progress update.
  • Fixed a crash that happened on foreground service start on Android APIs 28 and below.
  • Deprecated EstimatedTimeToArrivalFormatter and introduced EstimatedTimeOfArrivalFormatter, which allows to format ETA with respect to destination time zone.
  • Deprecated TripProgressUpdateFormatter.estimatedTimeToArrivalFormatter and introduced TripProgressUpdateFormatter.estimatedTimeOfArrivalFormatter, which allows to format ETA with respect to destination time zone.
  • Fixed MapboxNavigationSDKInitializerImpl logic so that uxfKey is properly retrieved and sent over.
  • Fixed the c...
Read more

Navigation SDK v3.10.0-rc.1

12 Jun 22:33
Compare
Choose a tag to compare
Pre-release

Navigation SDK Core Framework 3.10.0-rc.1 - 06 June, 2025

Features

  • Introduced performance trace points for navigation
  • Added filtering inaccurate wheel speed for Dead Reckoning to reduce possible location jumps in case of wheel slippage
  • Added provide the latest tiles version when tileset descriptors requested with empty version.
  • Added support for delta updates for routing and ADAS tiles
  • Added reading of life-traffic-service and reporting them to ADASIS traffic events
  • Improved heading interpolation

Bug fixes and improvements

  • Fixed incorrect route request with user added charging station
  • Fixed incorrect edge expansion during simulation by teleporting
  • Improved behavior on roundabouts: avoid cases when the vehicle position circles around the roundabout in case of matching errors
  • Fixed re-enabling route refresh after leg change
  • Removed caching of mapbox access token

Known issues ⚠️

Other changes

Mapbox dependencies

This release depends on, and has been tested with, the following Mapbox dependencies:

  • Mapbox Maps SDK v11.13.0-rc.1 (release notes)
  • Mapbox Navigation Native v324.13.0-rc.1
  • Mapbox Core Common v24.13.0-rc.1
  • Mapbox Java v7.4.0 (release notes)