离线路由不起作用
Offline routing is not working
我想使用离线路由功能,所以我下载了我所在地区的MapPackage。我知道下载很顺利,因为我可以离线放大该地区的城镇并显示所有细节)。
但是当我尝试计算该区域的路线时,它不起作用,而且我没有收到任何错误消息。 onCalculateRouteFinished 回调从未被调用过。
我正在使用 RouteManager#calculateRoute 方法(关于在线计算)。我应该使用其他东西来让它工作吗?
我使用的是评估许可证,是否相关?
谢谢
编辑以回答 marco 的评论:
我在 france/europe 中使用 "bretagne" 区域。
RouteOptions ro = new RouteOptions();
ro.setTransportMode(RouteOptions.TransportMode.TRUCK);
ro.setRouteType(RouteOptions.Type.FASTEST);
RoutePlan routePlan = new RoutePlan();
routePlan.setRouteOptions(ro);
-- addWaypoint (coord) called several times. all coords are in the bretagne region --
RouteManager routeManager = new RouteManager();
routeManager.calculateRoute(routePlan, new RouteManager.Listener(){
@Override
public void onProgress(int i) {
//Log.d(TAG, "progress " + index + ": " + i);
}
@Override
public void onCalculateRouteFinished(RouteManager.Error error, List<RouteResult> list) {
if (error != RouteManager.Error.NONE) {
Log.e(TAG, "Could not calculate route: " + error.name());
return;
}
if (list != null && list.size() > 0) {
-- do something with result --
}
}
使用 TransportMode.CAR 而不是 TRUCK 解决了这个问题。正如marco在评论中所说,离线路由仅适用于汽车。
我想使用离线路由功能,所以我下载了我所在地区的MapPackage。我知道下载很顺利,因为我可以离线放大该地区的城镇并显示所有细节)。
但是当我尝试计算该区域的路线时,它不起作用,而且我没有收到任何错误消息。 onCalculateRouteFinished 回调从未被调用过。
我正在使用 RouteManager#calculateRoute 方法(关于在线计算)。我应该使用其他东西来让它工作吗?
我使用的是评估许可证,是否相关?
谢谢
编辑以回答 marco 的评论:
我在 france/europe 中使用 "bretagne" 区域。
RouteOptions ro = new RouteOptions();
ro.setTransportMode(RouteOptions.TransportMode.TRUCK);
ro.setRouteType(RouteOptions.Type.FASTEST);
RoutePlan routePlan = new RoutePlan();
routePlan.setRouteOptions(ro);
-- addWaypoint (coord) called several times. all coords are in the bretagne region --
RouteManager routeManager = new RouteManager();
routeManager.calculateRoute(routePlan, new RouteManager.Listener(){
@Override
public void onProgress(int i) {
//Log.d(TAG, "progress " + index + ": " + i);
}
@Override
public void onCalculateRouteFinished(RouteManager.Error error, List<RouteResult> list) {
if (error != RouteManager.Error.NONE) {
Log.e(TAG, "Could not calculate route: " + error.name());
return;
}
if (list != null && list.size() > 0) {
-- do something with result --
}
}
使用 TransportMode.CAR 而不是 TRUCK 解决了这个问题。正如marco在评论中所说,离线路由仅适用于汽车。