네이버 지도 API 길찾기 - 출발지와 도착지 입력
Lpla
·2021. 4. 24. 21:20
1. Nclound
웹페이지에 길찾기 버튼을 만들고 클릭하면 네이버 지도 어플을 실행하여 출발지는 GPS상 내 현재 위치, 목적지는 미리 정해둔 어떤 장소로 하여 길찾기 기능을 만들고자 한다.
일반적인 지도 링크는 네이버 지도 사이트에서 URL을 가져오면 된다.
하지만 길찾기라면 이야기가 다르다.
길찾기 기능은 일반적인 네이버 지도로는 기능을 사용할 수 없고 Nclound의 Maps 서비스 중 "지도앱 연동 URL scheme"를 사용해야 한다.
URL Scheme를 잘 몰라도 어렵지 않게 사용할 수 있다. 나도 모른다.
2. 지도 실행
먼저 네이버 지도 어플의 메인 화면을 표시하는 URL은 다음과 같다.
nmap://map?&appname=com.example.myapp
com.example.myapp 자리에는 애플리케이션의 고유ID를 입력해야 하지만 우리는 앱에서 네이버 지도를 실행하는 것이 아니라 웹에서 실행하기 때문에 이 값에 영향을 받지 않는다.
따라서 nmap://map 으로도 네이버 지도를 실행할 수 있다.
3. 지도 검색
특정 키워드로 지도를 검색하고자 한다면 /search?query=키워드를 사용하면 된다.
예시로 부산시청으로 검색한 결과를 보여주는 URL은 다음과 같다.
nmap://search?query=%EB%B6%80%EC%82%B0%EC%8B%9C%EC%B2%AD
4. 장소 표시
지정된 좌표에 마커를 표시하고자 한다면 /place?lat=위도&lng=경도&name=이름을 사용하면 된다.
예시로 부산시청에 마커를 표시하는 URL은 다음과 같다.
nmap://place?lat=35.17982543369992&lng=129.07499499992576&name=%EB%B6%80%EC%82%B0%EC%8B%9C%EC%B2%AD
해당 장소의 좌표값을 쉽게 구하는 방법은 구글 지도를 이용하면 된다.
장소를 검색하고 우클릭하면 좌표값이 나온다.
5. 길찾기
이제 원하는 길찾기 기능이다.
/route/public 은 대중교통 길찾기, /route/car 는 자동차 길찾기, /route/walk 는 도보 길찾기다.
경로 탐색 공통 파라미터는 다음과 같다.
slat | double | N | 출발지 위도. -기본값: 사용자의 현 위치 사용 |
slng | double | N | 출발지 경도. -기본값: 사용자의 현 위치 사용 |
sname | string | N | 출발지 이름. -입력값: URL 인코딩된 문자열 -기본값: 사용자의 현 위치 사용 |
dlat | double | Y | 도착지 위도. |
dlng | double | Y | 도착지 경도. |
dname | string | N | 도착지 이름. -입력값: URL 인코딩된 문자열 -기본값: 도착지 주소 표시 |
v1lat | double | N | 경유지 1 위도. -기본값: 경유지 없음 |
v1lng | double | N | 경유지 1 경도. -기본값: 경유지 없음 |
v1name | string | N | 경유지 1 이름. -기본값: 경유지 없음 |
v2lat | double | N | 경유지 2 위도. -기본값: 경유지 없음 |
v2lng | double | N | 경유지 2 경도. -기본값: 경유지 없음 |
v2name | string | N | 경유지 2 이름. -입력값: URL 인코딩된 문자열 -기본값: 경유지 없음 |
v3lat | double | N | 경유지 3 위도. -기본값: 경유지 없음 |
v3lng | double | N | 경유지 3 경도. -기본값: 경유지 없음 |
v3name | string | N | 경유지 3 이름. -입력값: URL 인코딩된 문자열 -기본값: 경유지 없음 |
v4lat | double | N | 경유지 4 위도. -기본값: 경유지 없음 |
v4lng | double | N | 경유지 4 경도. -기본값: 경유지 없음 |
v4name | string | N | 경유지 4 이름. -입력값: URL 인코딩된 문자열 -기본값: 경유지 없음 |
v5lat | double | N | 경유지 5 위도. -기본값: 경유지 없음 |
v5lng | double | N | 경유지 5 경도. -기본값: 경유지 없음 |
v5name | string | N | 경유지 5 이름. -입력값: URL 인코딩된 문자열 -기본값: 경유지 없음 |
부산 남포동에서 부산시청까지 대중교통 길찾기 URL은 다음과 같다.
slat, slng, sname을 입력하지 않으면 기본값인 사용자의 현 위치로 표시된다.
따라서 현재 위치에서 부산시청까지 대중교통 길찾기 URL은 다음과 같다.
이것으로 해당 위치까지 길찾기 서비스를 제공하는 URL을 만들 수 있다.