본문 바로가기

📱 Mobile/iOS

iOS - 소셜 로그인, Kakao 로그인, 카카오 소셜 로그인 연동, 카카오 로그인 SDK 연동하기

구현 방법 선택

1. 카카오톡으로 로그인

  • loginWithKakaoTalk() 메서드 사용
  • lanuchMethod 파라미터를 사용해 .CustomScheme 또는 .UniversalLink 중 하나로 앱 전환 방식 설정 가능

 

2. 카카오계정으로 로그인

  • loginWithKakaoAccount() 메서드 사용
  • 기본 웹 브라우저를 통해 카카오계정 정보를 입력하고 로그인 

 

모듈 설정

카카오 로그인 API를 사용하려면 카카오 로그인 모듈인 KakaoSDKUser,
사용자 인증 및 토큰 관리자 모듈인 KakaoSDKAuth를 설치해야 한다.

import KakaoSDKCommon
import KakaoSDKAuth
import KakaoSDKUser

 

 

실습

https://developers.kakao.com/

 

Kakao Developers

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

developers.kakao.com

 

위 링크와 같은 카카오 개발자 페이지에 들어간다. 

이후, 내 애플리케이션에 들어가서 카카오 로그인하고 등록을 하고 키를 발급 받는다. 

 

 

📍Kakao Developers에서 설정

1️⃣ 추가하면서 앱 이름과 사업자명, 카테고리를 넣어주고

 

 

2️⃣ 카카오 로그인으로 가서 OFF→ ON으로 변경한다. 

 

 

3️⃣ 동의항목으로 가서 개인정보 상태를 설정해준다. 

 

 

 

📍터미널에서 KakaoSDK 추가

프로젝트 폴더에서 Pod init → Podfile 에 아래 코드 추가 → Pod install

 

# 전체 추가
pod 'KakaoSDK'

 

 

 

📍패키지 추가 

프로젝트로 돌아가서 우리가 많이 했던 패키지 추가해줘야 한다. 

 

https://github.com/kakao/kakao-ios-sdk

 

GitHub - kakao/kakao-ios-sdk

Contribute to kakao/kakao-ios-sdk development by creating an account on GitHub.

github.com

Add Packages → 요 링크를 복사해서 추가해주세용

 

 

굉장히 많지만!! 나는 필요한 아이들만 해줬다

'KakaoSDKCommon'   # 필수 요소를 담은 공통 모듈
'KakaoSDKAuth'     # 사용자 인증
'KakaoSDKUser'     # 카카오 로그인, 사용자 관리

 

 

 

728x90

 

 

 

📍Xcode에서 설정

[Info] > [Custom iOS Target Properties]에 LSApplicationQueriesSchemes를 추가 (Array 타입)

해당 키의 아이템으로 커스텀 URL 스킴에 사용할 값인 kakaokompassauthkakaolink를 추가 (String)

 

 

 

 

Kakao Developers에서 네이티브 키를 가져와 kakao{네이티브 키} 를 URL Scheme에 넣어준다. 

예를 들어, 내 네이티브 키가 abab123이라면 kakaoabab123을 넣어주면 된다.

 

 

 

 

📍 초기화

SceneDelegate에 아래 코드를 추가해준다. 

 

import KakaoSDKAuth

func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
        if let url = URLContexts.first?.url {
            if (AuthApi.isKakaoTalkLoginUrl(url)) {
                _ = AuthController.handleOpenUrl(url: url)
            }
        }
    }

 

 

 

📍 추가 코드

AppDelegate에 아래 두 코드를 추가해준다. 

 

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.
        KakaoSDK.initSDK(appKey: "네이티브키")
		return true
	}
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
        if (AuthApi.isKakaoTalkLoginUrl(url)) {
            return AuthController.handleOpenUrl(url: url)
        }
        return false
    }

 

 

 

 

참고 레퍼런스

[iOS] 카카오톡 로그인 SDK 연동하기

 

[iOS] 카카오톡 로그인 SDK 연동하기

안녕하세요🐾 iOS 카카오톡 로그인 SDK 적용 과정을 정리하고자 글을 남깁니다. 다른 SNS 로그인 관련 SDK 적용은 아래의 글을 참고해 주세요! 2023.12.22 - [iOS/Swift] - [iOS] 페이스북 로그인 SDK 적용 20

doggyfootstep.tistory.com

[iOS] 카카오톡 소셜 로그인 연동

 

[iOS] 카카오톡 소셜 로그인 연동

Cocoapod으로 간단하게 iOS SDK v2를 이용해보자 (업데이트 완료!🌝)

sujinnaljin.medium.com

Kakao Developers

 

Kakao Developers

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

developers.kakao.com

 

 

 

 

 

 

 

 

 

728x90