Directions API. Url provider
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 438
- Forks
- 117
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Description
In terms of Navigation for Android exists 2 types of Navigation(Router), it's Offline and Online. Both of them needs Route-URL provider.(Offline and Online are different modules , have own dependency graph and might be used independent).
Online Router's Route URL is provided by MapboxDirections that is a part of services-core library(under the hood is Retrofit(+OkHttp) library)
Problem
Offline Router cannot consume url from services-core because it brings "network" dependencies like Retrofit and OkHttp(they shouldn't be in Offline navigation).
Offline Router has own route-url provider RouteUrl
The main issue here: two classes where the same piece of logic exist.
Solution
- keep
service-corelibrary interfaces as it is - create additional library (like
router-url-provider) that depends onservice-directions-modeland (if java doesn't have clever approach for creating url) additional java library
How dependency tree looks now

Suggestion

Pros
router-url-provider might be used independently on service-core 👍
cc @mapbox/navigation-android @mapbox/maps-android @mapbox/navigation-api
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne mit dem Vergleich von Router.kt, MapboxDirections.java und der internen Implementierung von RouteUrl.kt und untersuche anschließend die im Issue dargestellten Modulabhängigkeitsgraphen. Bestimme, wie das gemeinsame Verhalten für Routen-URLs unabhängig genutzt werden kann, ohne Netzwerkabhängigkeiten in Offline Router einzuführen; abgeschlossen ist die Aufgabe, wenn beide Router-Typen den gemeinsamen Provider verwenden können, während die service-core-Schnittstellen unverändert bleiben.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- android, java
- Bereich
- api, build-system
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100