mapbox / mapbox/mapbox-navigation-android
Mapbox with Walking profile doesn't draw route on pedestrian path if user is located on the Main street (i.e. Driving path)
まだ誰も着手していません。
- 主要言語
- Kotlin
- スター
- 651
- フォーク
- 321
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Android API: 29
Mapbox Maps SDK version: 9.6.1
Mapbox Navigation UI SDK version: 1.5.1
I was exploring MapBox Direction API using Walking profile and experienced the following issue
In direction API, if my start location is located on main street, then route is drawn on the main street. I have configured my code with Walking profile hence my route should not be drawn on main street at any cost, as route should always be drawn according to nearest pedestrian path.
I checked above scenario in Google and found working as expected. Please let me know if this is a bug in MapBox Direction API or am I missing any configuration in my code?
Steps to trigger behavior
- User's current location is on main street rather than on sidewalk.
- Using Mapbox Walking profile, the route shall be drawn including sidewalk and crosswalk for user's safety
Location - Chicago, USA
Direction API Request
Case 1: If start & destination coordinate is on main street and not on Sidewalk
Start Coordinate - 41.90084455967382, -87.6232866902274
Destination Coordinate - 41.900860585647926, -87.6252983194398
Case 2: If start coordinate is on main street & destination coordinate is on Sidewalk
Note: Snapshot attached is of this case
Start Coordinate - 41.90084455967382, -87.6232866902274
Destination Coordinate - 41.90086457822011, -87.62527686154802
`
val walking: WalkingOptions = WalkingOptions.builder().alleyBias(1.0).walkwayBias(1.0).build()
mapboxNavigation.requestRoutes(
RouteOptions.builder()
.accessToken(accessToken)
.baseUrl(RouteUrl.BASE_URL)
.user(RouteUrl.PROFILE_DEFAULT_USER)
.requestUuid("")
.coordinates(listOf(coordinateList.first(), coordinateList.last()))
.geometries(RouteUrl.GEOMETRY_POLYLINE6)
.profile(RouteUrl.PROFILE_WALKING)
.steps(true)
.overview(RouteUrl.OVERVIEW_FULL)
.bannerInstructions(true)
.walkingOptions(walking)
.build(),
routesReqCallback
)
`
Expected behavior
If the route is fetched using Mapbox Walking profile, then routes shall be drawn on the pedestrian path.
Actual behavior
Route is not drawn on sidewalk if start and destination location is present on main street.

コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
mapboxNavigation.requestRoutes の呼び出しとその WalkingOptions 設定から始め、指定された SDK バージョンに対して両方の座標ケースを再現します。返されたルートのジオメトリを調べ、歩行者用経路に対してどこを通っているかを比較します。開始地点が大通り上にある場合に、徒歩ルートが適切な歩行者用経路を使用していることが、issue の解決条件です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- android, kotlin
- 領域
- api, mobile
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100