Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3.7.0-beta.1 #7893

Merged
merged 1 commit into from
Feb 11, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Binary file modified .github/splash-img.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions .tx/config
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ source_lang = en
type = ANDROID

[mapbox-navigation-sdk-for-android.libnavui-maps-strings-file]
file_filter = libnavui-maps/src/main/res/values-<lang>/strings.xml
source_file = libnavui-maps/src/main/res/values/strings.xml
file_filter = ui-maps/src/main/res/values-<lang>/strings.xml
source_file = ui-maps/src/main/res/values/strings.xml
source_lang = en
type = ANDROID

Expand Down
43 changes: 43 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,48 @@
# Changelog for the Mapbox Navigation SDK Core Framework for Android

## Navigation SDK Core Framework 3.7.0-beta.1 - 22 January, 2025
#### Features
- 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
- :warning: 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.

#### Bug fixes and improvements
- 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 condition for verifying the last good signal state in the offroad detection logic
- Fixed incorrect calculation of a "missing part" of the route causing all lanes to be mark as divergent
- Fixed EHorizon rural road objects sometimes marked as urban
- Fixed a bug that happened during reroute in case if initial route was requested with `approaches` option specified.

#### Known issues :warning:


#### Other changes


### Mapbox dependencies
This release depends on, and has been tested with, the following Mapbox dependencies:
- Mapbox Maps SDK `v11.10.0-beta.1` ([release notes](https://github.com/mapbox/mapbox-maps-android/releases/tag/v11.10.0-beta.1))
- Mapbox Navigation Native `v323.0.0-beta.2`
- Mapbox Core Common `v24.10.0-beta.2`
- Mapbox Java `v7.3.1` ([release notes](https://github.com/mapbox/mapbox-java/releases/tag/v7.3.1))


## Navigation SDK Core Framework 3.6.0-beta.1 - 29 November, 2024
#### Features
- Added experimental `RoutingTilesOptions#hdTilesOptions` to configure HD tiles endpoint.
Expand Down
2 changes: 1 addition & 1 deletion LICENSE.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Mapbox Navigation for Android version 2.0

Mapbox Navigation Android SDK

Copyright ©2022 - 2024 Mapbox, Inc. All rights reserved.
Copyright ©2022 - 2025 Mapbox, Inc. All rights reserved.

The software and files in this repository (collectively, "Software") are licensed under the Mapbox TOS for use only with the relevant Mapbox product(s) listed at www.mapbox.com/pricing. This license allows developers with a current active Mapbox account to use and modify the authorized portions of the Software as needed for use only with the relevant Mapbox product(s) through their Mapbox account in accordance with the Mapbox TOS. This license terminates automatically if a developer no longer has a Mapbox account in good standing or breaches the Mapbox TOS. For the license terms, please see the Mapbox TOS at https://www.mapbox.com/legal/tos/ which incorporates the Mapbox Product Terms at www.mapbox.com/legal/service-terms. If this Software is a SDK, modifications that change or interfere with marked portions of the code related to billing, accounting, or data collection are not authorized and the SDK sends limited de-identified location and usage data which is used in accordance with the Mapbox TOS. [Updated 2023-04]

Expand Down
32 changes: 16 additions & 16 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
PUBLIC_API_PREFIX = public-api

# $(1) modules' names(e.g. "libnavigation-core, libnavigation-base...")
# $(1) modules' names(e.g. "navigation, libnavigation-base...")
define reports-copy-to
for module in $(1) ; do \
if [ -d "$${module}/build/jacoco" ]; then \
Expand All @@ -17,16 +17,16 @@ libnavigation-metrics \
libnavigation-util \
libnavigator \
libtrip-notification \
libnavigation-core \
libnavigation-copilot \
libnavigation-tripdata \
libnavigation-voice \
navigation \
copilot \
tripdata \
voice \
libtesting-router

CORE_MODULES = $(RELEASED_CORE_MODULES)

RELEASED_UI_MODULES = \
libnavui-maps \
ui-maps \
ui-components \
androidauto \
libnavui-base \
Expand Down Expand Up @@ -141,10 +141,10 @@ core-check-api: assemble-core-release
./gradlew :libnavigation-util:checkApi -PhidePackage=com.mapbox.navigation.utils.internal
./gradlew :libnavigator:checkApi -PhidePackage=com.mapbox.navigation.navigator.internal
./gradlew :libtrip-notification:checkApi -PhidePackage=com.mapbox.navigation.trip.notification.internal
./gradlew :libnavigation-core:checkApi -PhidePackage=com.mapbox.navigation.core.internal
./gradlew :libnavigation-copilot:checkApi -PhidePackage=com.mapbox.navigation.copilot.internal
./gradlew :libnavigation-tripdata:checkApi -PhidePackage=com.mapbox.navigation.tripdata.internal,com.mapbox.navigation.tripdata.maneuver.internal,com.mapbox.navigation.tripdata.progress.internal,com.mapbox.navigation.tripdata.shield.internal,com.mapbox.navigation.tripdata.speedlimit.internal
./gradlew :libnavigation-voice:checkApi -PhidePackage=com.mapbox.navigation.voice.internal -PhideId=ReferencesHidden
./gradlew :navigation:checkApi -PhidePackage=com.mapbox.navigation.core.internal
./gradlew :copilot:checkApi -PhidePackage=com.mapbox.navigation.copilot.internal
./gradlew :tripdata:checkApi -PhidePackage=com.mapbox.navigation.tripdata.internal,com.mapbox.navigation.tripdata.maneuver.internal,com.mapbox.navigation.tripdata.progress.internal,com.mapbox.navigation.tripdata.shield.internal,com.mapbox.navigation.tripdata.speedlimit.internal
./gradlew :voice:checkApi -PhidePackage=com.mapbox.navigation.voice.internal -PhideId=ReferencesHidden
./gradlew :libtesting-router:checkApi -PhidePackage=com.mapbox.navigation.testing.router.internal

.PHONY: core-update-api
Expand All @@ -154,10 +154,10 @@ core-update-api: assemble-core-release
./gradlew :libnavigation-util:updateApi -PhidePackage=com.mapbox.navigation.utils.internal
./gradlew :libnavigator:updateApi -PhidePackage=com.mapbox.navigation.navigator.internal
./gradlew :libtrip-notification:updateApi -PhidePackage=com.mapbox.navigation.trip.notification.internal
./gradlew :libnavigation-core:updateApi -PhidePackage=com.mapbox.navigation.core.internal
./gradlew :libnavigation-copilot:updateApi -PhidePackage=com.mapbox.navigation.copilot.internal
./gradlew :libnavigation-tripdata:updateApi -PhidePackage=com.mapbox.navigation.tripdata.internal,com.mapbox.navigation.tripdata.maneuver.internal,com.mapbox.navigation.tripdata.progress.internal,com.mapbox.navigation.tripdata.shield.internal,com.mapbox.navigation.tripdata.speedlimit.internal
./gradlew :libnavigation-voice:updateApi -PhidePackage=com.mapbox.navigation.voice.internal
./gradlew :navigation:updateApi -PhidePackage=com.mapbox.navigation.core.internal
./gradlew :copilot:updateApi -PhidePackage=com.mapbox.navigation.copilot.internal
./gradlew :tripdata:updateApi -PhidePackage=com.mapbox.navigation.tripdata.internal,com.mapbox.navigation.tripdata.maneuver.internal,com.mapbox.navigation.tripdata.progress.internal,com.mapbox.navigation.tripdata.shield.internal,com.mapbox.navigation.tripdata.speedlimit.internal
./gradlew :voice:updateApi -PhidePackage=com.mapbox.navigation.voice.internal
./gradlew :libtesting-router:updateApi -PhidePackage=com.mapbox.navigation.testing.router.internal

.PHONY: assemble-ui-debug
Expand Down Expand Up @@ -214,15 +214,15 @@ publish-to-sdk-registry:
.PHONY: ui-check-api
ui-check-api: assemble-ui-release
# TODO Remove -PhideId=ReferencesHidden after fixing errors
./gradlew :libnavui-maps:checkApi -PhidePackage=com.mapbox.navigation.ui.maps.internal -PhideId=ReferencesHidden
./gradlew :ui-maps:checkApi -PhidePackage=com.mapbox.navigation.ui.maps.internal -PhideId=ReferencesHidden
./gradlew :ui-components:updateApi -PhidePackage=com.mapbox.navigation.ui.components.internal,com.mapbox.navigation.ui.components.maneuver.internal,com.mapbox.navigation.ui.components.maps.internal,com.mapbox.navigation.ui.components.speedlimit.internal,com.mapbox.navigation.ui.components.status.internal,com.mapbox.navigation.ui.components.tripprogress.internal,com.mapbox.navigation.ui.components.voice.internal
./gradlew :androidauto:updateApi -PhidePackage=com.mapbox.navigation.ui.androidauto.internal
./gradlew :libnavui-base:checkApi -PhidePackage=com.mapbox.navigation.ui.base.internal -PhideId=ReferencesHidden
./gradlew :libnavui-util:checkApi -PhidePackage=com.mapbox.navigation.ui.utils.internal -PhideId=ReferencesHidden

.PHONY: ui-update-api
ui-update-api: assemble-ui-release
./gradlew :libnavui-maps:updateApi -PhidePackage=com.mapbox.navigation.ui.maps.internal
./gradlew :ui-maps:updateApi -PhidePackage=com.mapbox.navigation.ui.maps.internal
./gradlew :ui-components:updateApi -PhidePackage=com.mapbox.navigation.ui.components.internal,com.mapbox.navigation.ui.components.maneuver.internal,com.mapbox.navigation.ui.components.maps.internal,com.mapbox.navigation.ui.components.speedlimit.internal,com.mapbox.navigation.ui.components.status.internal,com.mapbox.navigation.ui.components.tripprogress.internal,com.mapbox.navigation.ui.components.voice.internal
./gradlew :androidauto:updateApi -PhidePackage=com.mapbox.navigation.ui.androidauto.internal
./gradlew :libnavui-base:updateApi -PhidePackage=com.mapbox.navigation.ui.base.internal
Expand Down
Binary file modified androidauto/screenshots/active-guidance.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified androidauto/screenshots/free-drive.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified androidauto/src/main/res/drawable/ic_search_black36dp.png
Binary file modified androidauto/src/main/res/drawable/ic_settings.png
Binary file modified androidauto/src/main/res/drawable/marker_icon_20px_red.png
1 change: 0 additions & 1 deletion changelog/unreleased/features/7452.md

This file was deleted.

File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ android {
}

dependencies {
implementation project(':libnavigation-core')
implementation project(':navigation')
implementation project(':libnavigation-util')

implementation dependenciesList.kotlinStdLib
Expand Down
File renamed without changes.
File renamed without changes.
Binary file modified docs/screenshots/CodeStyle-1.png
Binary file modified docs/screenshots/CodeStyle-2.png
Binary file modified docs/screenshots/CodeStyle-3.png
Binary file modified docs/screenshots/CodeStyle-4.png
Binary file modified docs/screenshots/CodeStyle-5.png
26 changes: 14 additions & 12 deletions gradle/artifact-settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -25,31 +25,33 @@ ext {
navSdkArtifactSettings = [
'libnavigation-android' : new Tuple2('android', 'navigation-core-android'),
'libnavigation-base' : new Tuple2('base', 'navigation-core-base'),
'libnavigation-core' : new Tuple2('navigation', 'navigation-core-navigation'),
'libnavigation-copilot' : new Tuple2('copilot', 'navigation-core-copilot'),
'navigation' : new Tuple2('navigation', 'navigation-core-navigation'),
'copilot' : new Tuple2('copilot', 'navigation-core-copilot'),
'libnavigation-metrics' : new Tuple2('metrics', 'navigation-core-metrics'),
'libnavigation-tripdata' : new Tuple2('tripdata', 'navigation-core-tripdata'),
'tripdata' : new Tuple2('tripdata', 'navigation-core-tripdata'),
'libnavigation-util' : new Tuple2('utils', 'navigation-core-utils'),
'libnavigation-voice' : new Tuple2('voice', 'navigation-core-voice'),
'voice' : new Tuple2('voice', 'navigation-core-voice'),
'libnavigator' : new Tuple2('navigator', 'navigation-core-navigator'),
'libnavui-base' : new Tuple2('ui-base', 'navigation-core-ui-base'),
'libnavui-maps' : new Tuple2('ui-maps', 'navigation-core-ui-maps'),
'ui-maps' : new Tuple2('ui-maps', 'navigation-core-ui-maps'),
'libnavui-util' : new Tuple2('ui-utils', 'navigation-core-ui-utils'),
'libtrip-notification' : new Tuple2('notification', 'navigation-core-notification'),
'ui-components' : new Tuple2('ui-components', 'navigation-core-ui-components'),
'androidauto' : new Tuple2('android-auto-components', 'navigation-core-androidauto'),
'libtesting-router' : new Tuple2('test-router', 'navigation-core-testing-router'),
'libnavigation-custom-route' : new Tuple2('customroute', 'navigation-core-custom-route'),
'libnavigation-datainputs' : new Tuple2('datainputs', 'navigation-core-datainputs'),
'libnavigation-ev' : new Tuple2('ev', 'navigation-core-ev'),
'libnavigation-ev-ui' : new Tuple2('ev-ui', 'navigation-core-ev-ui'),
'libnavigation-weather' : new Tuple2('weather', 'navigation-core-weather'),
'libnavigation-roadcam' : new Tuple2('roadcam', 'navigation-core-roadcam'),
'libnavigation-roadcam-ui' : new Tuple2('roadcam-ui', 'navigation-core-roadcam-ui'),
'datainputs' : new Tuple2('datainputs', 'navigation-core-datainputs'),
'adasis' : new Tuple2('adasis', 'navigation-core-adasis'),
'ev' : new Tuple2('ev', 'navigation-core-ev'),
'ev-rangemap' : new Tuple2('ev-rangemap', 'navigation-core-ev-rangemap'),
'ev-ui' : new Tuple2('ev-ui', 'navigation-core-ev-ui'),
'weather' : new Tuple2('weather', 'navigation-core-weather'),
'roadcam' : new Tuple2('roadcam', 'navigation-core-roadcam'),
'roadcam-ui' : new Tuple2('roadcam-ui', 'navigation-core-roadcam-ui'),
'libnavigation-compose' : new Tuple2('compose', 'navigation-core-compose'),
'libnavigation-compose-core' : new Tuple2('compose-core', 'navigation-core-compose-core'),
'libnavigation-compose-foundation' : new Tuple2('compose-foundation', 'navigation-core-compose-foundation'),
'libnavigation-coordination' : new Tuple2('coordination', 'navigation-core-coordination'),
'coordination' : new Tuple2('coordination', 'navigation-core-coordination'),
]
}

Expand Down
20 changes: 6 additions & 14 deletions gradle/dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,16 +13,17 @@ ext {
// version which we should use in this build
def mapboxNavigatorVersion = System.getenv("FORCE_MAPBOX_NAVIGATION_NATIVE_VERSION")
if (mapboxNavigatorVersion == null || mapboxNavigatorVersion == '') {
mapboxNavigatorVersion = '322.0.0-rc.1'
mapboxNavigatorVersion = '323.0.0-beta.2'
}
println("Navigation Native version: " + mapboxNavigatorVersion)

version = [
mapboxMapSdk : '11.9.0-rc.1',
mapboxMapSdk : '11.10.0-beta.1',
mapboxSdkServices : '7.3.1',
mapboxNavigator : "${mapboxNavigatorVersion}",
mapboxCommonNative : '24.9.0-rc.1',
mapboxSearch : '2.7.0-rc.1',
mapboxCommonNative : '24.10.0-beta.2',
mapboxNavSdkCpp : '0.10.0-SNAPSHOT-01-17--09-07.git-b48bec5',
mapboxSearch : '2.8.0-beta.1',
mapboxBaseAndroid : '0.11.0',
androidXLifecycle : '2.4.0',
androidXCoreVersion : '1.6.0',
Expand Down Expand Up @@ -71,7 +72,6 @@ ext {
kaspresso : '1.5.3',
equalsVerifier : '3.15.8',
toStringVerifier : '1.4.8',
ktor : '2.3.0',
kotlinDateTime : '0.4.1',
kotlinSerialization : '1.3.1',
]
Expand All @@ -88,6 +88,7 @@ ext {
mapboxNavigator : "com.mapbox.navigator:dash-native:${version.mapboxNavigator}",
mapboxCommonNative : "com.mapbox.common:common:${version.mapboxCommonNative}",
mapboxSearch : "com.mapbox.search:mapbox-search-android:${version.mapboxSearch}",
mapboxNavSdkCpp : "com.mapbox.navsdk:navigation:${version.mapboxNavSdkCpp}",

mapboxAnnotations : "com.mapbox.base:annotations:${version.mapboxBaseAndroid}",
mapboxAnnotationsProcessor: "com.mapbox.base:annotations-processor:${version.mapboxBaseAndroid}",
Expand Down Expand Up @@ -188,15 +189,6 @@ ext {
// Test app crashlytics
firebaseCrashlyticsNdk : "com.google.firebase:firebase-crashlytics-ndk:${version.firebaseCrashlytics}",

// Ktor
ktorContentNegotiation : "io.ktor:ktor-client-content-negotiation:${version.ktor}",
ktorClientCore : "io.ktor:ktor-client-core:${version.ktor}",
ktorClientOkhttp : "io.ktor:ktor-client-okhttp:${version.ktor}",
ktorClientLogging : "io.ktor:ktor-client-logging:${version.ktor}",
ktorSerializationJson : "io.ktor:ktor-serialization-kotlinx-json:${version.ktor}",
ktorClientEncoding : "io.ktor:ktor-client-encoding:${version.ktor}",
ktorClientAuth : "io.ktor:ktor-client-auth:${version.ktor}",

kotlinXDateTime : "org.jetbrains.kotlinx:kotlinx-datetime:${version.kotlinDateTime}",
kotlinSerialization : "org.jetbrains.kotlinx:kotlinx-serialization-json:${version.kotlinSerialization}",
]
Expand Down
Loading
Loading