본문 바로가기

[IOS][SWIFT]

[IOS][SWIFT] 카카오 맵(Kakao map) 사용해서 지도 띄우고 마커 찍어보기!

반응형

안녕하세요 :)

오늘은 카카오 맵을 화면에 띄우는 글을 작성해보겠습니다!!😁

 

먼저 기본 세팅으로 바로 가보시죠!

 

https://apis.map.kakao.com/ios/guide/

 

먼저 이곳에 가서 SDK파일을 다운로드 받아야합니다!

 

다운로드 받으시고 압축을 해제하시면 그림과 같이 생성되시는데 이 위치를 잘 기억해두시고요!

 

다음으로

https://developers.kakao.com/

 

Kakao Developers

카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.

developers.kakao.com

이곳에 들어가셔서 내 애플리케이션을 등록하고 키를 발급받아야 합니다! 😁

 

 

로그인 하시고 내 애플리케이션 추가하기 버튼을 누르시면 그림과 같이 차이 뜨실텐데

저 같은 경우엔 앱 이름과 사업자명을 MapTEST라고 적었더니 저장되어 키가 발급됐습니다!!

 

이제 등록이 되셨다면 이 키를 내 프로젝트에 가져가는 방법으로는

앱 설정 -> 플랫폼으로 들어가보시면 ios 플래폼 등록을 누르시고 번들 ID를 넣어줍니다!

 

번들ID는 새 프로젝트를 생성하시고

 

프로젝트의 Bundle Identifier값을 그대로 적어주시면 되겠습니다!

 

작성하시고 다시 앱 설정 -> 요약 정보 -> 앱 키 -> 네이티브 앱 키를 저장해두시고

프로젝트로 넘어가서 작성해주시겠습니다!!

 

사진과 같이 Key : KAKAO_APP_KEY

Value를 저장해두신 네이티브 앱 키를 등록해 주시면 되겠습니다!!

 

자 이제 다운받은 SDK파일과 프레임워크들을 프로젝트에 추가해보겠습니다~

 

먼저 앞에 보여드렸던 DaumMap.embeddedframework 폴더를

프로젝트의 framework 파일 밑으로 드래그 하시고 그림과 같이 체크 후 추가해주시면 되겠습니다!!

 

예시를 만들다 보니 프로젝트 이름이 전과 다른게 있습니다..ㅎㅎ

아무튼 Destination부분을 체크하시고 추가해주시면 되겠습니다!!

 

다음은 의존성을 가지고 있는 다음 라이브러리들도 추가해주시면 되는데 이땐 사진과 같이

TARGETS -> General 부분에서 다음과 같이 추가해주시면 되겠습니다!!

 

구글의 많은 글들을 살펴 보면 Metal.framework가 아닌 OpenGLES.framework를 추가하라고 되있었을겁니다

저도 처음에 그렇게 추가하고 빌드 해보니 와 에러코드가 이렇게 떠버렸습니다!! 😂

 

그래서 이유를 찾다보니 애플 공식 홈페이지에서 이런 글을 보게 됐습니다!!

 

해석해보면 Catalyst버전으로 업데이트 되면서 더 이상 OpenGLES를 사용하지 못한다고 하네요...😅

 

그래서 Metal.framework를 추가하니 잘 되더라구요!!ㅎㅎ

 

자! 다음은 헤더파일을 생성하고 지정해보겠습니다!

(이때 헤더파일은 카카오 맵이 Objective-C로 작성되어서 Swift에서 사용하려면 헤더파일이 존재해야 합니다!)

 

먼저 프로젝트 폴더안에

newfile을 클릭하시고 다음과 같은 Header File을 저는 Header라는 이름으로 생성했습니다!!

 

그렇게 생성된 파일에 다음과 같이 헤더를 추가해주시면 됩니다!!

#import <DaumMap/MtMapView.h>라고 추가해주시고 이제 연결을 시켜주시면 되는데

사진과 같이 TARGETS -> Build Settings -> Swift Compiler - General -> Objective - C Bridging Header 부분에

프로젝트명/헤더파일명.h로 추가해주시면 됩니다!!

 

추가적으로 같은 경로에 있는 Objective - C Automatic Reference Counting (ARC)도 No로 설정해주셔야 합니다!!

(현재 Map용 SDK는 이 기능을 지원하지 않는다고 하네요..ㅎㅎ)

 

자 이렇게 설정을 다 끝내시고 맵을 화면에 띄우는 코딩을 작성해보겠습니다!!

 

다음과 같이 코드를 작성하시고 빌드를 시켜보시면 카카오 맵이 등장합니다!!

(참고로, 시뮬레이터에서는 작동하지 않고 디바이스에서만 작동하니 디바이스에서 빌드하시길 바랍니다😁)

 

결과 화면입니다!!

 

근데 제가 여기서 갑자기 저희 집이랑 회사에 포인트를 찍어보고 싶어서 뒤져보니 처음보셨던

카카오 맵 개발문서에는 아래 같이 Objective - C로 코드가 작성되어 있더라구요..😂

 

그래서 아직 많이 부족한 저는 이것저것 열심히 만지다 보니 다음과 같은 코드와 실행화면을 해내버렸습니다!! ㅎㅎ

 

위도와 경도는 구글에서 주소찾기로 찾아서 작성해봤습니다!!

처음 알려드린 개발문서를 참고하시면 이런 저런 기능이 많으니 한번씩 해보시면 좋을것 같습니다!!😍

 

그럼 오늘 글은 여기서 마무리하고 다음 글로 다시 오겠습니다!! 🥰

반응형