Kakao Login

2025. 7. 1. 21:53·iOS/Setting
반응형

🏁 학습할 내용

  • 세팅
    • 패키지 설치
    • info.plist
    • URL Scheme 등록
  • 초기화

⚙️ 세팅

📦 패키지 설치

외부 의존성으로는 Alamofire가 있다.

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

📋 Info.plist

<key>LSApplicationQueriesSchemes</key>
  <array>
      <!-- 카카오톡으로 로그인 -->
      <string>kakaokompassauth</string>
      <!-- 카카오톡 공유 -->
      <string>kakaolink</string>
      <!-- 카카오톡 채널 -->
      <string>kakaoplus</string>
  </array>

📝 URL Scheme 등록

로그인 이후 복귀를 위한 URL Scheme을 Target의 Info - URL Types에 등록해준다.

 

Identifer는 고유한 값을 , URL Schemes에는 위 kakao${NATIVE_APP_KEY}을 넣어준다.

NATIVE_APP_KEY 값은 MyApplication > App Keys 에서 확인할 수 있다.


⌨️ 코드

🏃 초기화

App Root의 생성자에서 NATIVE_APP_KET를 초기화 해준 후, onOpenURL을 통해 핸들링한다.

import SwiftUI
import KakaoSDKCommon
import KakaoSDKAuth
...

@main
struct SwiftUI_testApp: App {

    ...
    init() {
        // Kakao SDK 초기화
        KakaoSDK.initSDK(appKey: "NATIVE_APP_KEY")
    }

    var body: some Scene {
        WindowGroup {
            // onOpenURL()을 사용해 커스텀 URL 스킴 처리
            ContentView().onOpenURL(perform: { url in
                if (AuthApi.isKakaoTalkLoginUrl(url)) {
                    AuthController.handleOpenUrl(url: url)
                }
            })
        }
    }
    ...

}

🧤 핸들링

.onOpenURL { url in
	if (AuthApi.isKakaoTalkLoginUrl(url)) {
		AuthController.handleOpenUrl(url: url)
	}
}

🔑 로그인

카카오에서는 로그인 API를 2개를 알려준다.

  • loginWithKakaoTalk: 카카오톡 계정 이용 (권장0
  • loginWithKakaoAccount: 웹 브라우저를 통해 카카오 계정 로그인

isKakaoTalkLoginAvailable 함수를 통해 KakaTalk 실행 가능성 여부를 확인할 수 있다.

  private func loginWithKakao() {
    if UserApi.isKakaoTalkLoginAvailable() {
      UserApi.shared.loginWithKakaoTalk { token, error in
        print("KakaoTalk: \(token) \(error)")
      }
    } else {
      UserApi.shared.loginWithKakaoAccount { token, error in
        print("KakaoAccount: \(token) \(error)")
      }
    }
  }

🔓 로그아웃

  private func logoutWithKakao() {
    UserApi.shared.logout { error in
      
    }
  }

✂ 연결 끊기

  private func disconnectWithKakao() {
    UserApi.shared.unlink { error in

    }
  }

출처

 

Kakao Developers

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

developers.kakao.com

 

Kakao Developers

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

developers.kakao.com

 

 

 

 

 

반응형

'iOS > Setting' 카테고리의 다른 글

private SPM 설치하기  (0) 2025.10.11
OpenAPI Generator  (2) 2025.07.08
Naver Login  (0) 2025.06.30
Xcode 유용한 단축키 모음  (2) 2025.06.12
SwiftFormat  (0) 2025.06.10
'iOS/Setting' 카테고리의 다른 글
  • private SPM 설치하기
  • OpenAPI Generator
  • Naver Login
  • Xcode 유용한 단축키 모음
Hamp
Hamp
남들에게 보여주기 부끄러운 잡다한 글을 적어 나가는 자칭 기술 블로그입니다.
  • Hamp
    Hamp의 분리수거함
    Hamp
  • 전체
    오늘
    어제
    • 분류 전체보기 (297)
      • CS (29)
        • 객체지향 (2)
        • Network (7)
        • OS (6)
        • 자료구조 (1)
        • LiveStreaming (3)
        • 이미지 (1)
        • 잡다한 질문 정리 (0)
        • Hardware (2)
        • 이론 (5)
        • 컴퓨터 그래픽스 (0)
      • Firebase (3)
      • Programing Langauge (36)
        • swift (31)
        • python (4)
        • Kotlin (1)
      • iOS (131)
        • UIKit (37)
        • Combine (1)
        • SwiftUI (32)
        • Framework (7)
        • Swift Concurrency (22)
        • Tuist (6)
        • Setting (10)
        • Modularization (1)
        • Instruments (6)
      • PS (59)
        • 프로그래머스 (24)
        • 백준 (13)
        • LeetCode (19)
        • 알고리즘 (3)
      • Git (18)
        • 명령어 (4)
        • 이론 (2)
        • hooks (1)
        • config (2)
        • action (7)
      • Shell Script (2)
      • Linux (6)
        • 명령어 (5)
      • Spring (9)
      • CI-CD (4)
      • Android (0)
        • Jetpack Compose (0)
  • 블로그 메뉴

    • 홈
    • 태그
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Swift
    투포인터
    백준
    concurrency
    UIKit
    GIT
    dp
    boostcamp
    property
    dispatch
    dfs
    Network
    프로그래머스
    lifecycle
    Tuist
    protocol
    SwiftUI
    CS
    AVFoundation
    IOS
  • 최근 댓글

  • 최근 글

  • 반응형
  • hELLO· Designed By정상우.v4.10.0
Hamp
Kakao Login
상단으로

티스토리툴바