mapbox / mapbox/mapbox-navigation-android-examples

Historical trajectory replay problem

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

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

主要言語
Kotlin
スター
65
フォーク
56
平均マージ
1日 4時間
マージ済み PR(30日)
2

説明

Using v3Demo, the navigation SDK was upgraded to 3.7.0, and an abnormal error was reported when using the historical replay function:
Error log:
java.lang.IllegalStateException: native CUSTOM origin isn't supported
at com.mapbox.navigation.base.internal.utils.RouterExKt.mapToSdkRouteOrigin(RouterEx.kt:22)
at com.mapbox.navigation.core.history.model.HistoryEventMapper.mapNavigationRoutes(HistoryEventMapper.kt:104)
at com.mapbox.navigation.core.history.model.HistoryEventMapper.mapSetRoute(HistoryEventMapper.kt:73)
at com.mapbox.navigation.core.history.model.HistoryEventMapper.map(HistoryEventMapper.kt:41)
at com.mapbox.navigation.core.history.MapboxHistoryReader.loadNext(MapboxHistoryReader.kt:44)
at com.mapbox.navigation.core.history.MapboxHistoryReader.next(MapboxHistoryReader.kt:38)
at com.mapbox.navigation.core.history.MapboxHistoryReader.next(MapboxHistoryReader.kt:13)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:210)
at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:170)
at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:787)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:817)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:808)
at com.mapbox.navigation.examples.standalone.replay.HistoryFileLoader$loadDefaultReplayHistory$2.invokeSuspend(HistoryFileLoader.kt:50)
at com.mapbox.navigation.examples.standalone.replay.HistoryFileLoader$loadDefaultReplayHistory$2.invoke(Unknown Source:8)
at com.mapbox.navigation.examples.standalone.replay.HistoryFileLoader$loadDefaultReplayHistory$2.invoke(Unknown Source:4)
at kotlinx.coroutines.intrinsics.UndispatchedKt.startUndispatchedOrReturn(Undispatched.kt:89)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.withContext(Builders.common.kt:169)
at kotlinx.coroutines.BuildersKt.withContext(Unknown Source:1)
at com.mapbox.navigation.examples.standalone.replay.HistoryFileLoader.loadDefaultReplayHistory(HistoryFileLoader.kt:37)
at com.mapbox.navigation.examples.standalone.replay.HistoryFileLoader$loadReplayHistory$2.invokeSuspend(HistoryFileLoader.kt:25)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)
Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@fe0fdc5, Dispatchers.Main.immediate]

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

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

はじめの一歩

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

調査の方向性

v3Demo の履歴リプレイフローと、スタックトレースのエントリポイントである HistoryFileLoader、HistoryEventMapper、RouterExKt から始めます。navigation SDK 3.7.0 でリプレイの失敗を再現し、その後 CUSTOM の origin マッピングパスを追跡します。履歴リプレイが報告された IllegalStateException なしで読み込まれれば完了です。

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

評価

技術スタック
android, kotlin
領域
mobile
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
30/100

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

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