OSM 中的离线路由 - android

Offline routing in OSM - android

我刚刚使用 osmdroid 在 android 上构建了离线地图。

我可以使用我存储的 waypoints 在离线图块上绘制多段线。

ArrayList<GeoPoint> waypoints = my_waypoints_from_json;
RoadManager roadManager = new OSRMRoadManager(m_activity);
road = roadManager.getRoad(waypoints);
Polylines roadOverlay = RoadManager.buildRoadOverlay(road, m_activity);

是否可以绘制两个位置之间的离线路线? (如果我在离线模式下使用地图并且我想画一条从源到目的地的线。)

OSRMRoadManager 只能在线工作,需要 API 调用才能确定路线。您的离线图块中不包含路由数据,它们只是纯位图。

解决此问题的一个方法是使用 the Graphopper library。您将需要在您的应用程序中包含 java 库,并生成和分发离线导航数据。这不是一个微不足道的过程,但它是可以完成的。