Google지도를 표시하려면 SupportMapFragment를 사용합니다. 나는 방향 API를 두 위치 사이의 두 경로를 사용합니다. GSON 라이브러리로 방향 API를 반환 한 JSON 데이터를 구문 분석하고 각 경로를 보여주는 steps 태그를 추출합니다. 그런 다음 폴리 라인을 사용하여 그립니다. 하지만 내 길은 길에서 일치하지 않으며 대부분 직선입니다.Google지도에서 폴리 라인을 사용하여 두 지점 간 경로를 그립니다.
GoogleDirectionResponse data = (GoogleDirectionResponse) response;
if (data.getStatus().matches("OK")){
List<LatLng> steps = new ArrayList<>();
RoutesData routesData = data.getRoutes().get(0);
LegData legData = routesData.getLegs().get(0);
for (StepsData item : legData.getSteps()){
LatLng start = new LatLng(item.getStart_location().getLat(), item.getStart_location().getLng());
LatLng end = new LatLng(item.getEnd_location().getLat(), item.getEnd_location().getLng());
steps.add(start);
steps.add(end);
}
onDirectionFetchedListener.onDirectionFetched(steps);
}
I가 배열 된 LatLng 데이터를 보유하고 그것을 그릴 프래그먼트 전달 :
@Override
public void onDirectionFetched(List<LatLng> steps) {
PolylineOptions rectLine = new PolylineOptions().width(3).color(
Color.RED);
for (LatLng item : steps) {
rectLine.add(item);
}
Polyline polylin = map.addPolyline(rectLine);
}
및이 내 맵
코드 구글 복귀가 JSON 방향 내 추출한 : 레드 라인에서
걸릴 모양. 그것은 길을 가리지 않습니다. 어떻게이 문제를 해결할 수 있습니다. the documentation 따르면 덕분
감사합니다. 작동한다. –