mapbox / mapbox/mapbox-navigation-android

Issues using MapboxMapMatching routes

Aperta
#4,780 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Kotlin
Stelle
651
Fork
321
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hi,

we want to navigate using the Navigation UI SDK version 1.5.1

Besides com.mapbox.api.directions.v5.MapboxDirections routes, we want to use routes from other providers or GPX files.

We use com.mapbox.api.matching.v5.MapboxMapMatching to convert such coordinate lists to com.mapbox.api.directions.v5.models.DirectionsRoute like :

val request = MapboxMapMatching.builder()
.accessToken(Constants.MAPBOX_TOKEN)
.coordinates(positions)
.steps(true)
.voiceInstructions(true)
.bannerInstructions(true)
.profile(DirectionsCriteria.PROFILE_CYCLING)
.build()
The matching is successful and we want to use the route in a navigation like :

val no = NavigationOptions.Builder(App.get().applicationContext)
.accessToken(Constants.MAPBOX_TOKEN)
.distanceFormatter(distanceFormatter)
.isDebugLoggingEnabled(true)
.isFromNavigationUi(true)
.isRouteRefreshEnabled(true)
.build()

mapboxNavigation = MapboxNavigation(no)

[...]

val routes: MutableList = ArrayList()
routes.add(route)
mapboxNavigation?.setRoutes(routes)
mapboxNavigation?.startTripSession()

However, when navigating we are getting wrong route progress information like "You'll arrive" as first banner instruction.

The route contains legs in the correct order, however compared to a route created with com.mapbox.api.directions.v5.MapboxDirections which contains only one Leg with plenty steps, the matched route contains plenty of legs having only always two steps.

Can you resolve what goes wrong or what we are doing wrong ?

Thank you

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia tracciando la richiesta MapboxMapMatching attraverso setRoutes(routes) e startTripSession(), confrontando le tratte e i passaggi del percorso associato con un percorso MapboxDirections. Verifica come vengono ricavati la prima istruzione del banner e l’avanzamento del percorso; il lavoro è completato quando i percorsi associati producono l’avanzamento della navigazione e le istruzioni corretti.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
kotlin
Ambito
mobile
Tipo di issue
Bug
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.