구현 방법 선택
1. 카카오톡으로 로그인
- loginWithKakaoTalk() 메서드 사용
- lanuchMethod 파라미터를 사용해 .CustomScheme 또는 .UniversalLink 중 하나로 앱 전환 방식 설정 가능
2. 카카오계정으로 로그인
- loginWithKakaoAccount() 메서드 사용
- 기본 웹 브라우저를 통해 카카오계정 정보를 입력하고 로그인
모듈 설정
카카오 로그인 API를 사용하려면 카카오 로그인 모듈인 KakaoSDKUser,
사용자 인증 및 토큰 관리자 모듈인 KakaoSDKAuth를 설치해야 한다.
import KakaoSDKCommon
import KakaoSDKAuth
import KakaoSDKUser
실습
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' # 카카오 로그인, 사용자 관리
📍Xcode에서 설정
[Info] > [Custom iOS Target Properties]에 LSApplicationQueriesSchemes를 추가 (Array 타입)
해당 키의 아이템으로 커스텀 URL 스킴에 사용할 값인 kakaokompassauth, kakaolink를 추가 (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 적용 과정을 정리하고자 글을 남깁니다. 다른 SNS 로그인 관련 SDK 적용은 아래의 글을 참고해 주세요! 2023.12.22 - [iOS/Swift] - [iOS] 페이스북 로그인 SDK 적용 20
doggyfootstep.tistory.com
[iOS] 카카오톡 소셜 로그인 연동
Cocoapod으로 간단하게 iOS SDK v2를 이용해보자 (업데이트 완료!🌝)
sujinnaljin.medium.com
Kakao Developers
카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
developers.kakao.com
'📱 Mobile > iOS' 카테고리의 다른 글
[iOS - UIKit] ScrollView에서 Button 클릭 시 화면의 최상단, 최하단 이동 (0) | 2024.03.11 |
---|---|
[iOS - UIKit] Compositional Layout - CollectionView (0) | 2024.01.11 |
[iOS - Swift] 동시성 프로그래밍, 비동기성 프로그래밍, 병렬성 프로그래밍 (0) | 2023.12.21 |
[iOS - Swift] Final 키워드 (0) | 2023.11.16 |
[iOS - Swift] 접근 제어자(open, public, internal, fileprivate, private), setter (0) | 2023.10.16 |