사이드 메뉴
시작하기
로그인
커뮤니케이션
광고
iOS
이 문서는 iOS SDK(Kakao SDK for iOS)를 사용한 카카오내비 기능 구현 방법을 소개합니다.
| 요구 사항 | 참고 |
|---|---|
카카오내비를 실행하여 목적지까지의 길을 안내합니다.
- iOS SDK 2.8.4부터 카카오내비 앱 미설치 시 웹에서 길 안내를 실행하는 기능을 더 이상 제공하지 않습니다.
- 카카오내비 앱이 설치돼 있지 않은 경우에는 설치 페이지로 이동합니다.
- 이전 버전에서 제공하는 웹 길 안내 기능 또한 추후 제공 종료될 예정이므로, 최신 버전 업데이트를 권장합니다.
길 안내는 사용자의 현재 위치로부터 지정한 목적지까지의 경로를 카카오내비로 안내하는 기능입니다. NaviApi의 navigateUrl()을 호출해 URL을 반환 받아 열도록 구현합니다.
navigateUrl() 호출 시 목적지 정보를 담은 NaviLocation, 검색 조건을 담은 NaviOption 객체를 전달해야 합니다. NaviOption에는 원하는 검색 조건만 지정하여 요청할 수 있습니다. 자세한 정보는 레퍼런스를 참고합니다.
startX, startY, startAngle 파라미터를 사용해 경로 검색 시 참고할 출발 지점을 지정할 수 있습니다. 그러나 길 안내 시에는 사용자의 현재 위치로부터 목적지까지의 안내만을 제공하며, 별도의 출발 지점을 지정할 수는 없습니다.
let destination = NaviLocation(name: "카카오판교오피스", x: "321286", y: "533707")let viaList = [NaviLocation(name: "판교역 1번출구", x: "321525", y: "532951")]guard let navigateUrl = NaviApi.shared.navigateUrl(destination: destination, viaList: viaList) else {return}UIApplication.shared.open(navigateUrl, options: [:]) { result inif result == false {UIApplication.shared.open(NaviApi.webNaviInstallUrl, options: [:], completionHandler: nil)}}
길 안내 예시 화면
경유지 목록 설정이 가능합니다. 각 경유지 정보를 NaviLocation 객체에 담고, 요청 시 viaList 파라미터로 경유지 NaviLocation의 리스트(List)를 전달합니다.
| 요구 사항 | 참고 |
|---|---|
카카오내비를 실행하여 지정한 목적지 정보를 공유합니다.
목적지 공유는 카카오내비에서 지정한 목적지 정보를 공유할 수 있는 화면을 보여주는 기능입니다. NaviApi의 shareUrl()을 호출해 URL을 반환 받아 열도록 구현합니다.
shareUrl() 호출 시 목적지 정보를 담은 NaviLocation, 검색 조건을 담은 NaviOption 객체를 전달해야 합니다. NaviOption에는 원하는 검색 조건만 지정하여 요청할 수 있습니다. 자세한 정보는 레퍼런스를 참고합니다.
startX, startY, startAngle 파라미터를 사용해 경로 검색 시 참고할 출발 지점을 지정할 수 있습니다. 그러나 길 안내 시에는 사용자의 현재 위치로부터 목적지까지의 안내만을 제공하며, 별도의 출발 지점을 지정할 수는 없습니다.
let destination = NaviLocation(name: "카카오판교오피스", x: "321286", y: "533707")guard let shareUrl = NaviApi.shared.shareUrl(destination: destination) else {return}UIApplication.shared.open(shareUrl, options: [:]) { result inif result == false {UIApplication.shared.open(NaviApi.webNaviInstallUrl, options: [:], completionHandler: nil)}}
목적지 공유 예시 화면
경유지 목록 설정이 가능합니다. 각 경유지 정보를 NaviLocation 객체에 담고, 요청 시 viaList 파라미터로 경유지 NaviLocation의 리스트(List)를 전달합니다.