mapbox-navigation-android
mapbox-navigation-android copied to clipboard
In replay puck moves to the destination
Android API: Mapbox Navigation SDK version: 2.4.0-beta.3 NN: 93.0.0
If you stay at one place while navigating, puck will move to the destination point while replay.
Steps to trigger behavior
- Fetch a route and start navigating, don't move for 30 seconds, stop the session.
- Play history record ^^.
Expected behavior
- History record should repeat a real session.
Actual behavior
- Puck stays for 30 seconds at one place (as expected), but after that it starts moving to the destination point until arrival.
ReplayProgressObserver
is not used, we don't simulate route progress from the route
the issue is reproducible with examples
7310e80c-9ba5-4445-96ab-4722b8680495.pbf.gz
https://user-images.githubusercontent.com/14282440/161078172-1c32095c-d3aa-499e-b39f-864ed911a99f.mp4
cc @kmadsen @Guardiola31337 @mskurydin @SiarheiFedartsou
The history file does not include any puck movement. It appears that nav-native is predicting poor GPS and starts simulating. The replayer will only play locations we give it, and it will only play it once. Replayer is behaving as designed, maybe this is something nav-native wants to address to improve the stale location experience.
We could also introduce some version of a location repeater https://github.com/mapbox/mapbox-navigation-android/issues/3185. The default behavior seems like it should be "repeat the last played location", because it is the most used expectation. The /issues/3185 ticket describes a "stale by default, enable the repeater" approach.