TimeType ARRIVAL无法在Android SDK中运行

时间:2019-05-30 11:08:20

标签: here-api

我希望我的用户能够在出发时间和到达时间之间切换。但是,当我在routeOptions.setTime中发送带有TimeType.ARRIVAL的路由计划请求时,它给了我一个INVALID_PARAMETERS错误。但是与TimeType.DEPARTURE完全相同的请求可以正常工作。

下面是我的代码。我是在做错什么,还是TimeType.ARRIVAL被弃用或只是无法正常工作?

   RoutePlan routePlan = new RoutePlan();

    RouteOptions routeOptions = new RouteOptions();
    routeOptions.setTransportMode(RouteOptions.TransportMode.PUBLIC_TRANSPORT);
    routeOptions.setRouteType(RouteOptions.Type.FASTEST);
    routeOptions.setRouteCount(3);
    routeOptions.setLocale(Locale.getDefault());
    if (toggleSwitch.getCheckedTogglePosition() == 0) {
        routeOptions.setTime(selected_time, RouteOptions.TimeType.DEPARTURE);
    }
    else {
        routeOptions.setTime(selected_time, RouteOptions.TimeType.ARRIVAL);
    }
    routePlan.setRouteOptions(routeOptions);

    // Select Waypoints for your routes
    routePlan.addWaypoint(new RouteWaypoint(start_address_coordinate));
    routePlan.addWaypoint(new RouteWaypoint(end_address_coordinate));
    router.calculateRoute(routePlan, new RouterListener());

1 个答案:

答案 0 :(得分:0)

按照HERE documentation

  

ARRIVAL时间类型选项仅受UMRouteOptions支持。在请求路由时,在RouteOptions.setTime(Date,TimeType)中使用此值以及不支持的RouteOptions会导致RoutingError.INVALID_PARAMETERS。

因此,您遇到的错误是预期的行为。请按照HERE documentation更正您的代码。