mapbox / mapbox/mapbox-navigation-android
Route traffic summary
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 651
- Forks
- 321
- PR merge metrics
- No merged PRs in 30d
Description
This ticket tracks the discussion of adding a summary of traffic on the entire route, suitable for display to the user on the route overview screen.
This should summarize the traffic on the route currently (as opposed to comparing the current conditions to typical conditions of the same route).
Could be either
- enum, one of a fixed set of values.
- string, already-localized description (with localization).
Noting that @mapbox/navigation-ios is currently implementing and exposing this client side. Capturing from @1ec5
> For reference, this feature is similar to one in the iOS navigation SDK that colors the ETA label at the bottom of turn-by-turn navigation based on the predominant traffic congestion level along the remaining portion of the route. [`RouteProgress.averageCongestionLevelRemainingOnLeg`](https://github.com/mapbox/mapbox-navigation-ios/blob/62b1622b8290b7a974ca9a0a7f39b5f986e5ae8d/Sources/MapboxCoreNavigation/RouteProgress.swift#L201-L239) is public but undocumented. An implementation of the specific label above would be simpler in that it can consider every segment along the entire route unconditionally, so all that’s left is to iterate over those segments, summing up the durations of heavy segments, durations of moderate segments, etc., and determining the highest congestion level based on these sums.
@jyrigo @AhmerKhan1 is this a feature we want to support?
@mapbox/navigation-api @mapbox/navnative @danpat is this something we should expose on _Router_s side? Also cc'ing @vanmaxim for visibility as currently working on the Hybrid Router.
cc @zugaldia @truburt @mapbox/navigation-android
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the referenced RouteProgress.averageCongestionLevelRemainingOnLeg implementation in RouteProgress.swift and review the discussion about exposing this from the Router side. Define whether the Android SDK should expose a fixed enum or localized string for current, route-wide congestion, and consider the feature complete when the representation and exposure point are agreed and implemented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- kotlin, swift
- Domain
- api, mobile
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100