NaviApi
카카오내비 API 호출을 담당하는 클래스입니다.
원하는 목적지 정보를 입력하여 NaviLocation
객체를 만들고 길안내 API를 호출할 수 있습니다.
사용하는 좌표계를 변경하거나 각종 옵션을 설정하려면 NaviOptions
를 생성하고 해당 API options 파라미터로 함께 전달합니다.
경유지가 있다면 경유지에 대한 NaviLocation
객체를 추가로 만들고 배열에 담아 해당 API viaList 파라미터로 전달합니다.
아래는 간단한 카카오내비 길안내 예제입니다.
let destination = NaviLocation(name: "카카오판교오피스", x: 321286, y: 533707)
NaviApi.shared.navigate(destination: destination)
.subscribe(onSuccess: {
print("성공")
}, onError: { (error) in
print(error)
})
.disposed(by: self.disposeBag)
-
카카오내비로 장소 공유를 실행합니다.
-
카카오내비로 길안내를 실행합니다.
-
웹 길안내 URL을 얻습니다. 획득한 URL을 브라우저에 요청하면 카카오내비가 없는 환경에서도 길안내를 받을 수 있습니다.
Important
외부 브라우저로 열지 않고 웹뷰를 사용할 경우 추가 설정이 필요합니다. 사용자의 위치정보에 접근할 수 있도록 info.plist 파일에Privacy - Location When In Use Usage Description
항목을 추가해야 합니다. -
웹 길안내 URL을 얻습니다. 획득한 URL을 브라우저에 요청하면 카카오내비가 없는 환경에서도 길안내를 받을 수 있습니다.
Important
외부 브라우저로 열지 않고 웹뷰를 사용할 경우 추가 설정이 필요합니다. 사용자의 위치정보에 접근할 수 있도록 info.plist 파일에Privacy - Location When In Use Usage Description
항목을 추가해야 합니다.