0

我正在为 Android 导航应用程序使用 Here SDK 版本 4.7.4。因此,我们使用我们的门户网站计算路线,并希望在 Android 导航应用程序中使用我们计算的相同路线(通过在此处调用 REST API 使用门户网站)。

我在网上搜索过这个,不幸的是没有找到任何有价值的东西。

目前,在 Here map Navigation 示例中,它使用以下代码行计算路线:

Waypoint startWaypoint = new Waypoint(startGeoCoordinates);
Waypoint destinationWaypoint = new Waypoint(destinationGeoCoordinates);

List<Waypoint> waypoints = new ArrayList<>(Arrays.asList(startWaypoint, destinationWaypoint));

routingEngine.calculateRoute(waypoints, new TruckOptions(), calculateRouteCallback);

我想通过调用另一个可以返回先前计算的路线的 Here SDK 方法来替换这些代码。当我们开始导航时,它应该遵循路线。

4

1 回答 1

1

您无法Route将从 REST API 调用收到的对象转换为 HERE SDK 可以理解的 Java 或 Kotlin 对象 - 因为 JavaScript/JSON 与 Java/Kotlin 不兼容,最重要的是,Route无法在应用程序端从头开始,因为没有构造函数是可公开访问的。

您只能尝试使用您在门户网站上使用的相同参数再次创建路由。结果可能会有所不同,因为这是一个新的计算,时间和交通情况可能会改变路线。

更好的解决方案可能是与 HERE 支持团队交谈并要求他们允许从给定的RouteHandle. 路由句柄唯一标识一个路由,它只是一个String路由的表示。REST API 可以生成句柄,然后 HERE SDK 可以使用它,理论上......

于 2021-06-07T20:53:12.603 回答