我正在评估适用于Android的新Here SDK,并已成功实施地图显示,路由和导航。我被要求添加一个ETA,因此查看了SDK文档并找到了NavigationManager的getEta()方法。
每当我调用此方法时,返回的值为0;即返回的Date对象上的toString()是“ETA:Wed Dec 31 18:59:59 EST 1969”
我正在使用的确切代码是这个,大约每秒一次:
Date eta = NavigationManager.getInstance().getEta(true, Route.TrafficPenaltyMode.DISABLED);
Log.d(logTag, "ETA: " + eta.toString());
我假设我在某个地方缺少一些设置调用,但SDK文档中的任何内容都没有向我发出。我可以验证是否已设置目的地并且路线计算已完成。
答案 0 :(得分:0)
当您处于导航模式时,可以/应该使用NavigationManager.getEta()来获取考虑到您的位置的预计到达时间(以日期的形式)。 当导航未运行时,您将获得您编写的结果。
如果您想获得导航之外的路线的预计到达时间(例如,在路线概览中),您可以在Route对象上调用Route.getTta(),然后您将获得路线旅行的持续时间(基于在几秒钟内在routeoptions / routeplan中进行设置。