우선 카카오톡 공식문서를 잘 읽어보자.
하지만 위 가이드는 Xcode 버전 10.0을 대상으로 하기 때문에 몇 가지 오류가 발생한다.
오류를 해결한 과정을 기록한다.
우선 Bundle ID를 등록하자.
아래의 과정을 차례로 따르자
1. 카카오 개발자사이트 (https://developers.kakao.com) 접속
2. 개발자 등록 및 앱 생성
3. IOS 플랫폼 추가: 앱 선택 – [플랫폼] – [iOS 플랫폼 등록] – 번들ID(필수) 등록
4. 페이지 상단의 [네이티브 앱 키]와 등록한 [번들 ID]를 사용합니다.
프로젝트를 생성할때 Bundle identifier를 기억해두거나 잊었다면
아래 사진에서 Bundle identifier를 확인할 수 있다.

iOS 플랫폼 등록을 누르고 위에서 확인한 Bundle identifier를 입력한다.

Info.plist 파일에 다음과 같은 항목으로 앞 단계에서 발급 받은 APP KEY 를 설정한다.

SDK를 다운받아서 압축을 풀고 DaumMap.embeddedframework 폴더를 애플리케이션 프로젝트로 복사한다.
Add Files to “프로젝트명”을 이용하거나, finder에서 Xcode 왼편의 프로젝트 내에 드래그한다.

Frameworks, Libraries, and Embedded Content에서 +버튼을 눌러 아래 프레임워크들을 추가한다.

Link Binary With Libraries에서 아래 프레임 워크를 추가한다.

현재 Map용 SDK 는 Automatic Reference Counting(ARC) 을 지원하지 않는다.
Objective-C Automatic Reference Counting 을 No,
Weak references in Manual Retain Release을 No 로 바꾸어준다

Xcode12에서 ARM기반 맥(애플실리콘)을 지원함에 따라 아이폰 시뮬레이터에 ARM용 아키텍쳐 arm64가 추가되면서 오류가 발생한다.
Excluded Architectures에서 사진과 같이 arm64를 입력해주고,
User-Defined에서 VAILD_ARCHS가 있다면 제거해준다.

SDK가 Objective-C로 구성되어 있기 때문에 우리가 사용하는 Swift에서 사용하기 위해 "Bridging Header" 설정해야한다.
커맨드 + n을 눌러 header file을 생성한다.

프로젝트명-Bridging-Header.h로 파일을 저장한다.
헤더 파일을 열고 # import <DaumMap/MTMapView.h>을 추가해준다.

오른쪽에 Full Path를 복사하고 아래 사진의 Objective-C Bridging Header의 값에 붙여 넣기한다.

이제 ViewController에 다음과 같이 코딩하고 실행한다.
import UIKit
class ViewController: UIViewController, MTMapViewDelegate {
var mapView: MTMapView?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
mapView = MTMapView(frame: self.view.bounds)
if let mapView = mapView {
mapView.delegate = self
mapView.baseMapType = .standard
self.view.addSubview(mapView)
}
}
}
올바르게 동작하는 것을 볼 수 있다.
