samsung-ga / woody-iOS-tip

🐶 iOS에 대한 소소한 팁들과 개발하다 마주친 버그 해결기, 그리고 오늘 배운 것들을 모아둔 레포
19 stars 0 forks source link

[TIL] 카카오톡 공유하기 API #15

Open samsung-ga opened 2 years ago

samsung-ga commented 2 years ago

카카오톡 메시지 보내기 API 2가지

카카오 API 중 친구나 채팅방에 카카오톡 메시지를 보내는 방법은 2가지가 있다.

카카오톡 공유 API는 LinkAPI모듈이 제공하고 카카오톡 메시지 API는 TalkAPI모듈이 제공한다. 뿐만 아니라 메시지 API는 카카오 로그인 모듈 KakaoSDKUser, 사용자 인증 모듈 KaKaoSDKAuth, 카카오톡 모듈 KakaoSDKTalk을 모두 설치해야 한다. 아래 모듈간 의존성 사진을 보면 알 수 있다.



두 API의 차이점은 이 링크에 잘 나와있는데 간단히 정리하면 아래와 같다.



Marryting 프로젝트에는...

Marryting 프로젝트에는 카카오톡 공유 API를 사용한다. 단순하게 초대장을 공유하는 형태로 친구 목록을 가져와 서비스 자체 친구 목록 화면을 개발하지 않아도 될 뿐더러, 카카오톡 메시지 API는 사용 권한 신청이 필요하기 때문이다. 상대적으로 구현이 간단하며 권한 신청이 필요하지 않은 카카오톡 공유 API를 선택했다.



적용하기 🚀

최소 지원 버전

세팅

✅ iOS 9.0 이상에서 iOS SDK를 통해 카카오톡을 실행시키는 기능을 이용하려면 Info.plist 파일에 앱 실행 허용 목록을 설정해야한다. (Privacy and Your App 참고)



✅ URL Schemes 설정하기

카카오계정을 통한 인증과 카카오톡 메시지를 통한 앱 실행을 위해 [URL Schemes] 설정을 한다. [Info] > [URL Types] > [URL Schemes] 항목에 네이티브 앱 키(Native App Key)를 kakao${NATIVE_APP_KEY} 형식으로 등록한다.



구현 방법

  1. 메시지 템플릿을 참고하여 보낼 메시지 내용 구성하기
  2. 구성한 메시지를 전달 인자로 카카오톡 공유 APi 호출하여 메시지 전송을 요청하기



구현

  1. 필요한 모듈 설정

Module Description
KakaoSDK 모든 모듈 전체 설치
KakaoSDKLink 카카오톡 공유 모듈


  1. 메시지 종류 및 구성 방법 선택하기
    • 메시지 종류를 확인 후 어떤 메시지 템플릿을 사용할 지 결정한다.


  1. 메시지 선택 후, 원하는 메시지 및 템플릿에 따라 API를 호출한다. (코드는 생략한다.)

이슈나 새로운 기능에 대한 설명은 개발 이후 추가할 예정이다.

Reference