Stack Overflow 社区您好,
我目前正在使用 HERE 地图导航 SDK,并且遇到了一个问题,希望有人可以帮助我解决。
问题陈述:
在项目中使用 HERE Maps Navigation SDK 时,我遇到了路线重新计算的问题。这是场景:
我在使用 SDK 导航时,不小心走错了 2 公里。 尽管偏离了预定路线这段距离,但导航并未建议调头。 此外,地图继续显示错误的路线(返回起点的路线),并且没有提供正确的路线让我回到正轨。
以下是第二次测试的屏幕截图,其中正在创建重新路由,但错误的是,而且速度太慢。
详情:
SDK版本:4.19.1.0
平台:iOS/安卓
编程语言:Flutter
代码片段:https://github.com/bigwingsrahul/sample_here_navigation
我已审查了文档并确保我的实施遵循路线重新计算和导航更新的建议实践。然而问题依然存在。
问题:
还有其他人在使用 HERE 地图导航 SDK 时遇到过类似问题吗? 是否有我可能忽略的特定设置或方法可以帮助更有效地处理此类情况? 对于在 HERE Maps Navigation SDK 中管理路线重新计算有什么建议或最佳实践吗? 任何帮助或见解将不胜感激!
谢谢!
使用内置方法: 我尝试使用 HERE Maps Navigation SDK 提供的内置方法来处理路线重新计算。然而,这些方法已被证明在重新生成路线时太慢且不准确,这并不能有效解决问题。
重新启动导航: 我尝试清除所有当前导航数据并从头开始重新启动导航过程,类似于从 init 方法初始化。不幸的是,这种方法导致应用程序卡在空白屏幕上并显示不规则的位置点,从而使其无法使用。
页面重新打开尝试: 作为最后的手段,我尝试重新打开页面以重置导航。虽然这确实重置了某些方面,但显示的操作仍然不正确,并且没有解决路线重新计算的根本问题。
对于可能正在寻找问题解决方案的未来开发人员。获取新的当前位置后添加以下内容解决了问题:
Waypoint newStartingPoint = Waypoint(currentGeoCoordinates);
if (currentMapMatchedLocation?.bearingInDegrees != null) {
newStartingPoint.headingInDegrees = currentMapMatchedLocation?.bearingInDegrees;
}