티스토리 뷰
네이버 지도 SDK를 사용해보자.
네이버 공식 문서에 사용 방법이 자세하게 나와있다.
1. 클라이언트 ID 발급
NAVER CLOUD PLATFORM 회원가입을 한 후 콘솔로 들어와 주자.
콘솔 좌측 인스펙터에 Services를 누르면 사용 가능한 서비스들이 나온다.
AI-NAVER-API의 Maps을 이용할 것이다.
AI-NAVER-API 클릭하면 다음과 같은 화면이 나온다.
먼저 Application 등록을 진행해주자.
Application 이름을 설정하고
사용할 Mobile Dynamic Map을 선택한다.
그리고 아래쪽에 iOS Bundle ID를 입력해주자.
프로젝트의 Bundle ID를 입력해주면 된다.
이렇게 API 사용 신청을 마쳤다.
클라이언트 ID (API-KEY)는 인증 정보에서 확인 가능하다.
2. 의존성 추가
네이버 지도 SDK는 CocoaPods을 이용한다.
터미널에서 프로젝트 경로로 이동후
Podfile 생성
pod init
Podfile에 의존성 선언
target 'NaverMapDemo' do
pod 'NMapsMap'
end
Install
pod install --repo-update
git-lfs 설치
추가로 대용량 파일을 받기 위해 git-lfs 설치가 필요하다.
설치를 위해 homebrew가 없다면 먼저 설치해주자.
터미널을 열고 다음과 같이 입력한다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
그리고 brew로 git-lfs를 설치하자.
brew install git-lfs
git-lfs를 설치한 후에 꼭 프로젝트 경로로 이동해 git-lfs 초기화를 해주자.
git-lfs install
3. 클라이언트 ID 지정
클라이언트 ID를 지정하는 방법은 두 가지가 있다.
둘 중 한 가지로 지정해주자.
info.plist에 지정
info.plist에 새로운 엘리먼트를 추가하고, key는 NMFClientId, value는 위에서 발급받은 ClientID로 지정한다.
API를 호출해 지정
info.plist를 수정하지 않고 AppDelegate에서 ClientID를 지정해줄 수 있다.
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
NMFAuthManager.shared().clientId = "YOUR_CLIENT_ID_HERE"
return true
}
4. 지도 표시
이제 ViewController에 지도를 추가해보자.
import UIKit
import NMapsMap
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let mapView = NMFMapView(frame: view.frame)
view.addSubview(mapView)
}
}
실행해보면
완료 👍
지도를 추가했으니 공식 문서의 iOS 개발 가이드를 참고해 프로젝트에 맞게 사용해보자.
'iOS' 카테고리의 다른 글
iOS) UICollectionView Programmatically (0) | 2022.10.10 |
---|---|
iOS) Error - Add Transport Security has blocked a cleartext HTTP connection to { ~ } since it is insecure .. (0) | 2022.10.05 |
iOS) 스토리보드 없이 개발 준비하기 (0) | 2022.10.03 |
iOS) UILabel의 속성 변경 (feat. 특정 문자만 변경) (0) | 2022.09.28 |
iOS) UIView에 Border 적용하기 (0) | 2022.09.01 |
- Total
- Today
- Yesterday
- 요시푸스
- UICollectionView banner
- crud
- github
- ios
- BOJ 10808
- git
- Stack
- autolayout
- Custom Detent
- swift
- Carousel Effect
- BOJ 10809
- BOJ 17298
- BOJ 1935
- bottom sheet
- sheetPresentationController
- CAGradientLayer
- UICollectionView Error
- BOJ 10866
- 2023 회고
- NaverMaps
- BOJ 17413
- Sheet Height
- Gradient View
- Card CollectionVIew
- BOJ 10820
- 1406 에디터
- Algorithm
- BOJ 10799
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |