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)

オープン
#4,555 コメント 2 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

blocked improvement jira-sync-complete
主要言語
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
  1. User's current location is on main street rather than on sidewalk.
  2. 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.

ROUTE_NOT_DRAWN_ON_SIDEWALK

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

mapboxNavigation.requestRoutes の呼び出しとその WalkingOptions 設定から始め、指定された SDK バージョンに対して両方の座標ケースを再現します。返されたルートのジオメトリを調べ、歩行者用経路に対してどこを通っているかを比較します。開始地点が大通り上にある場合に、徒歩ルートが適切な歩行者用経路を使用していることが、issue の解決条件です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
android, kotlin
領域
api, mobile
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。