Как я могу использовать OSMDROID Polyline в Android - PullRequest
0 голосов
/ 29 сентября 2018
GeoPoint startPoint = new GeoPoint(104.9274702345929, -78.8899208239701);
GeoPoint endPoint = new GeoPoint(102.946749865264,-78.8935274008143);

RoadManager roadManager = new OSRMRoadManager();
ArrayList<GeoPoint> waypoints = new ArrayList<GeoPoint>();
waypoints.add(startPoint);
waypoints.add(endPoint);

Road road = roadManager.getRoad(waypoints);
Polyline roadOverlay = RoadManager.buildRoadOverlay(road, this);
map.getOverlays().add(roadOverlay);
map.invalidate();

Я не могу нарисовать полилинию в mapView, у меня проблема при запуске этого кода, и я вижу ошибку в строке кода Polyline, например: Несовместимые типы.Требуется: org.osmdroid.views.overlay.Polyline Найдено: org.osmdroid.views.overlay.PathOverla

1 Ответ

0 голосов
/ 29 сентября 2018

Вы используете старую версию библиотеки osmbonuspack.

Тип возврата метода RoadManager.buildRoadOverlay(road, this) был PathOverlay до версий ~ 4.3, но с тех пор он возвращает Polyline.Текущая версия (на момент написания) 6.5.2, так что вы как-то включили довольно устаревшую версию.

Следуйте этому руководству, чтобы использовать последнюю версию: https://github.com/MKergall/osmbonuspack/wiki/HowToInclude

...