heremaps / here-android-sdk-examples

Java-based projects using the HERE SDK for Android.
Apache License 2.0
145 stars 191 forks source link

FtcrNavigationManager getDistanceToCurrentManeuver() = 9223372036854775807 #464

Open Strikelon opened 2 years ago

Strikelon commented 2 years ago

Hello!

I am using HereVersion 3.18.5.

According to api documentation FtcrNavigationManager has method getDistanceToCurrentManeuver(), and sometimes I have situation like this in logs:

[NavigationHereMapFragment] getCurrentManeuver() direction = FORWARD [NavigationHereMapFragment] getCurrentManeuver() getDistance = 11 [NavigationHereMapFragment] getDistanceToCurrentManeuver() = 9223372036854775807

Screen navigation on the map: https://prnt.sc/1sxxcnn

Why can I receive such value: 9223372036854775807?

As I understand method getDistanceToCurrentManeuver() is only one way to get accurate information about distance while driving, because this information should change if I approach to the end of maneuver, but methods "getCurrentManeuver() getDistance" provide the same information, untill I have another maneuver.

And method getDistanceToCurrentManeuver() provides accurate information but really often it provides 9223372036854775807?

What does it mean? Could you advice. Thank you!

Sepal-canopy commented 2 years ago

Hey Strikelon, Was facing this exact issue and tried so many things to resolve it. Finally the below fix turned out to be working well.

long Distance_To_CurrentManeuver = m_navigationManager.getAfterNextManeuverDistance() - maneuver.getDistanceToNextManeuver();

The value keeps lowering to 0 as your position approaches the maneuver