본문 바로가기

IT/Xcode

Swift4.2, Xcode 10.1 IOS 12.1로 Daum 지도 API 사용하기!

안녕하세요

양군 입니다 :)


오늘은 IOS 12.1(2018.11 현재 최신 버전) 그리고 다음지도 API를 사용하는 방법을 알아 볼게요!

초보 개발자 분들에게 도움이 되시길 바라며, 이 포스팅을 작성 하겠습니다

이 글을 작성하기 전 Naver, Google, Apple MAP API를 공부 했지만

Daum MAP API가 설명이 제일 부족 함을 느꼇으나, 도움이 될 만한 글을 찾지 못하여 작성 하게 되었습니다

개인적으로 공부를 하며 남기는 포스팅이다 보니 다소 부족한 점은 지적 해 주시고 바로 잡기 위해 댓글로 알려주시면 참고 하여 저의 발전에 참고 하겠습니다! ㅎㅎ

1. Daum Map API를 사용하기 위해 준비하기

     1.1. Daum Map SDK 다운 받기http://apis.map.daum.net/ios/guide/

           - 직접 다운로드 링크(Daum 지도 iOS 사이트) : http://apis.map.daum.net/download/ios/sdk/IOS_DaumMap_SDK_1.3.1.zip

     1.2. API Key 발급 받기(2018.12.31 이후 부터 Kakao Developers에서 발급 받은 Key만 사용 가능 합니다.)https://developers.kakao.com/

          1.2.1. 위 1.1 Daum Map SDK 다운 받기에서 설명 되어 있기에 설명은 생략 합니다.


2. Xcode Project 생성 하기

     2.1 xcode 실행 후 File - New - Project... 클릭

     2.2 Single View APP 선택 후 Next

     2.3 Product Name(이 설정이 곧 Bundle ID로 사용 됩니다) 설정 후 Next

     2.4 저장 위치를 설정 하신 뒤 Create


3. Daum MAP API를 사용 하기 위해 초기 설정 하기

     3.1. 위에서 발급 받은 Key 설정을 위해 info.plist설정

          3.1.1. 우측 화면에서 우클릭 후 Add Row 클릭

          3.1.2. Key 값에 "KAKAO_APP_KEY", Value Type에 "String", Value에 "발급 받은 key"를 입력 해 줍니다

     3.2. Project 설정의 General에서 Embedded Binaries 항목에 다운 받은  SDK의 IOS_DaumMap_SDK_1.3.1/lib/DaumMap.embeddedframework/DaumMap.framework을 추가

          3.2.1. 추가 하실 때 반드시 "Create folder references"항목과 "Copy items if needed"을 체크 해 줍니다

          3.2.2. 정상적으로 추가가 되면 "Linked Frameworks and Libraries"에도 Frameworks가 추가 되고, Build Settings의 "Frameworks Search Path"에 경로가 추가 됩니다


          3.2.3. "Linked Frameworks and Libraries"에 아래 Frameworks를 추가 해 주세요

                    - OpenGLES.framework

                    - SystemConfiguration.framework

                    - CoreLocation.framework

                    - QuartzCore.framework

                    - libc++.tdb

                    - libxml2.tdb

                    - libsqlite3.tdb

     3.3. Daum Map은 Automatic Reference Counting(ARC)를 지원 하지 않는다고 하니 설정(Build Settings - automatic reference counting 검색)을 변경 해 줍니다

    3.4. Daum Map SDK는 Objective-C로 구성 되어 있기 때문에 우리가 사용하는 Swift에서 사용 하기 위해 "Bridging Header"설정이 필요 합니다.

          3.4.1. 프로젝트 파일 네비게이터 에서 우클릭을 통해 New File - Header File을 클릭 해 주고 파일명을 임의로 정합니다.

          3.4.2. 생성된 Header File(.h)내에 코딩을 해 줍니다. #import <DaumMap/MTMapView.h>

          3.4.3. Build Settings의 "Objective-C Bridging header"에 파일 위치를 추가 해 줍니다.


4. 기본 코팅을 통해 Map 띄워 보기

     4.1. ViewController.swift에 아래 코딩을 하여 지도를 띄워 봅니다

//

//  ViewController.swift

//  daumMapTest

//

//  Created by 영관 양 on 05/11/2018.

//  Copyright © 2018 영관 양. All rights reserved.

//


import UIKit


class ViewController: UIViewController, MTMapViewDelegate {

    

    var mapView: MTMapView?


    override func viewDidLoad() {

        super.viewDidLoad()

        

        mapView = MTMapView(frame: self.view.bounds)

        

        if let mapView = mapView {

            mapView.delegate = self

            mapView.baseMapType = .standard

            self.view.addSubview(mapView)

        }

    }

}

     4.2. 전 iPhone X 시뮬레이터를 통해 띄워 봤는데 잘 나오네요!


이상 양군이었습니다

저도 공부하는 단계라 많이 부족합니다

서두에 말씀 드린 것 처럼 어디까지나 초보 개발자 분들을 위해 작성 된 포스트 이며, 혹시 제가 잘 못 알고 있는 부분이 있으시면 언제든 댓글로 지적 바랍니다 ㅎㅎ


감사합니다!


'IT > Xcode' 카테고리의 다른 글

xcode CommandLine 비활성화 오류 해결하기  (0) 2018.11.01
xcode 프로젝트를 열 수 없을 때  (0) 2018.10.26
Xcode 10.0 다운로드  (0) 2018.09.30