적당한 고통은 희열이다

- 댄 브라운 '다빈치 코드' 중에서

Swift iOS 앱 개발/실전 Swift

[Swift iOS] 네이버 지도 API 사용하기

hongssup_ 2023. 4. 13. 09:27
반응형

내가 사랑하눈 네이버 지도를 사용해 볼 일이 생겼다. 

내가 제일 많이 사용하는 앱이 네이버 지도 앱이라 몬가 지도 사용해서 뭔가를 만들어 보고싶었는데 드디어 사용해봄!!

문서에 사용 설명도 친절하게 잘 되어 있어서 어렵지는 않았다. 신기하고 재미써뚬 ㅎㅎ

 

1. SDK 설치

네이버 지도 SDK 사용하려면 cocoapods로 설치해야 하는데

대용량 파일을 받기 위해서는 brew 먼저 설치 해줘야 된대서 homebrew 먼저 설치,,

요기 가서 다운 받으면 됨 👉🏻 https://brew.sh/

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

요러케만 하면 M1에서는 오류가 난다. 

zsh: command not found: brew

터미널에서 에러 위쪽에 보면 

eval $(/opt/homebrew/bin/brew shellenv)

이걸로 다시 입력해보라고 . 이거 하고 brew install 하면 잘됨

+ Xcode 14 에서 pod init 시 에러 

요즘은 SPM 주로 써서 pod 설치할 일이 거의 없었는데, 네이버 지도 sdk cocoapods 설치만 된다고 해서 오랜만에 pod init 했는데 오류가 났따.

cocoapods 에서 아직 Xcode 14에 완벽하게 대응하지 못해 발생하는 에러라나 뭐라나,,

Project Document > Project Format을 한단계 하위버전인 Xcode 13으로 변경하니까 해결 되었슴.

 

2. 네이버 지도 API 사전 설정

네이버 클라우드 회원가입 혹은 로그인 https://www.ncloud.com/

무료이긴 한데 먼저 결제수단을 등록해줘야 이용이 가능하다. 

콘솔에 들어가서 Services - AI NAVER API - Application 등록 - Mobile Dynamic Map 선택 - iOS Bundle ID 추가

 

3. 네이버 지도 API 사용하기

MapView 띄우기

let defaultCameraPosition = NMFCameraPosition(NMGLatLng(lat: 37.54330366, lng: 127.04455548), zoom: 15, tilt: 0, heading: 0)
var naverMapView = NMFNaverMapView()

naverMapView = NMFNaverMapView(frame: view.frame)
view.addSubview(naverMapView)
naverMapView.mapView.moveCamera(NMFCameraUpdate(position: defaultCameraPosition))

내 위치 설정

CoreLocation으로 내 현재위치를 받아와서, NMFLocationOverlay 로 내 위치를 화면에 띄워줄 수 있다. 

 

마커 설정

마커는 보통 하나가 아니라 여러개 한꺼번에 설정하니까 마커 수가 많을 경우 생성을 비동기로 해주면 좋다고 한다. 

728x90
반응형