티스토리 뷰

1. https://developers.kakao.com/console/app 에서 내 어플리케이션 추가하기

2. IOS - ios/Runner.xcodeproj/project.pbxproj 파일 -> PRODUCT_BUNDLE_IDENTIFIER 속성 복사해서 iOS 번들 ID에 추가

3.  카카오 로그인 활성화 해주기

 

 

 

4. 카카오 SDK 추가

 

pubspec.yaml에 라이브러리를 추가한다. 

https://developers.kakao.com/docs/latest/ko/flutter/getting-started

dependencies:
  kakao_flutter_sdk: ^1.7.0 # 전체 추가
  kakao_flutter_sdk_user: ^1.7.0 # 카카오 로그인
  kakao_flutter_sdk_talk: ^1.7.0 # 카카오톡 메시지, 카카오톡 소셜(프로필 가져오기, 친구 목록 가져오기)
  kakao_flutter_sdk_share: ^1.7.0 # 카카오톡 공유
  kakao_flutter_sdk_navi: ^1.7.0 # 카카오내비
  kakao_flutter_sdk_friend: ^1.7.0 # 카카오톡 소셜(피커: 친구 선택하기)

 

 

$ flutter pub get

 

5. 코드

import 'package:kakao_flutter_sdk_common/kakao_flutter_sdk_common.dart';

void main() {
    ...
    // 웹 환경에서 카카오 로그인을 정상적으로 완료하려면 runApp() 호출 전 아래 메서드 호출 필요
    WidgetsFlutterBinding.ensureInitialized();

    // runApp() 호출 전 Flutter SDK 초기화
    KakaoSdk.init(
        nativeAppKey: '${YOUR_NATIVE_APP_KEY}',
        javaScriptAppKey: '${YOUR_JAVASCRIPT_APP_KEY}',
    );
    runApp(MyApp());
    ...
}

 

6. 버튼에 연동할 코드

 

// 카카오 로그인 구현 예제

// 카카오톡 설치 여부 확인
// 카카오톡이 설치되어 있으면 카카오톡으로 로그인, 아니면 카카오계정으로 로그인
if (await isKakaoTalkInstalled()) {
  try {
      await UserApi.instance.loginWithKakaoTalk();
      print('카카오톡으로 로그인 성공');
  } catch (error) {
    print('카카오톡으로 로그인 실패 $error');

    // 사용자가 카카오톡 설치 후 디바이스 권한 요청 화면에서 로그인을 취소한 경우,
    // 의도적인 로그인 취소로 보고 카카오계정으로 로그인 시도 없이 로그인 취소로 처리 (예: 뒤로 가기)
    if (error is PlatformException && error.code == 'CANCELED') {
        return;
    }
    // 카카오톡에 연결된 카카오계정이 없는 경우, 카카오계정으로 로그인
    try {
        await UserApi.instance.loginWithKakaoAccount();
        print('카카오계정으로 로그인 성공');
    } catch (error) {
        print('카카오계정으로 로그인 실패 $error');
    }
  }
} else {
  try {
    await UserApi.instance.loginWithKakaoAccount();
    print('카카오계정으로 로그인 성공');
  } catch (error) {
    print('카카오계정으로 로그인 실패 $error');
  }
}

 

 

 

 

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함