inblog logo
|
{CODE-RYU};
    Flutter

    [Flutter] Client Credentials Grant 1 - 카카오 로그인

    류재성's avatar
    류재성
    Jun 07, 2024
    [Flutter] Client Credentials Grant 1 - 카카오 로그인
    Contents
    1. 기본 설정2. 애플리케이션 설정2.3 동의항목 활성3. 키 해시 등록하기
     

    1. 기본 설정

    1.1 리소스 다운받기

    Kakao Developers
    카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다.
    Kakao Developers
    https://developers.kakao.com/docs/latest/ko/kakaologin/flutter
    Kakao Developers
    notion image
     
    💡
    내가 만든 앱은 프로토콜이 없기 때문에 SDK 가 필요하다.
     
    notion image
     
    버튼으로 사용할 디자인을 다운받을 수 있다.
     
    notion image
     
     
     
    notion image
     
    받은 사진을 assets 에 넣는다.
     
    notion image
     
     
    pubspec.yml 설정을 한다.
     
    💡
    저장한 사진을 가지고 로그인 버튼을 만들 수 있다.
     

    1.2 패키지 설정

    notion image
     
    notion image
     
    kakao_flutter_sdk: ^1.9.2 # 전체 추가
     
    notion image
     
    💡
    pubspec.yml 에서 카카오 SDK 의존성을 추가한다.
     

    1.3 AndroidManifest.xml 설정

     
    notion image
     
    android/app/src/main/AndroidManifest.xml
    <activity android:name="com.kakao.sdk.flutter.AuthCodeCustomTabsActivity" android:exported="true"> <intent-filter android:label="flutter_web_auth"> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <!-- "kakao${YOUR_NATIVE_APP_KEY}://oauth" 형식의 앱 실행 스킴 설정 --> <!-- 카카오 로그인 Redirect URI --> <data android:scheme="kakaob5f712d6b79f3fc88d627fb6d1ce05e2" android:host="oauth"/> </intent-filter> </activity>
     
    notion image
     
    AndroidManifest.xml 의 application 에 넣는다.
     

    1.4 build.gradle 최소 sdk 설정

    💡
    애플리케이션이 지원하는 최소 Android 버전을 지정하는 데 사용한다. 이를 통해 개발자는 특정 Android API 레벨 이상의 기능을 보장하고, 해당 버전 이하의 장치에서는 애플리케이션이 설치되지 않도록 할 수 있.
     
    notion image
    notion image
     
     

    2. 애플리케이션 설정

     

    2.1 애플리케이션 등록하기

     
    notion image
     
    내 어플리케이션 - 애플리케이션 추가하기를 한다.
    notion image
     

    2.2 플랫폼 등록하

     
    notion image
     
    플랫폼 설정을 한다.
     
    notion image
    notion image
     
    패키지명을 등록한다.
     

    2.3 동의항목 활성

     
    notion image
     
    notion image

    3. 키 해시 등록하기

    3.1 키 해시란?

    💡
    키 해시는 애플리케이션을 고유하게 식별하는 역할을 한다. 이를 통해 외부 서비스는 요청이 신뢰할 수 있는 애플리케이션으로부터 왔는지 확인할 수 있다.
     
    notion image
    notion image
     
    💡
    키 해시를 등록하기 위해 위의 코드를 cmd 창에 관리자 모드로 실행해야 한다. 실행 전 keykool 과 %USERPROFILE% 을 확인해준다.
     

    3.2 keytool

     
    notion image
    keytool --version
    cmd 창에서 keytool이 있는지 확인한다.
     
    💡
    keytool 은 자바 jdk 가 설치되면 bin 폴더에 있다. jdk 를 환경 변수 설정을 해주면 된다.
    notion image
     

    3.3 %USERPROFILE% 확인

     
    notion image
    echo %USERPROFILE%
    💡
    %USERPROFILE%는 Windows 운영 체제에서 사용자의 프로필 폴더 경로를 나타내는 환경 변수이다. 이 변수는 각 사용자의 개인 파일 및 설정을 저장하는 위치를 가리킨다. 예를 들어, 사용자 프로필 폴더에는 문서, 바탕 화면, 다운로드, 즐겨찾기 등의 폴더가 포함되어 있다.
     

    3.4 OpenSSL설치

    💡
    OpenSSL은 보안 통신을 위한 암호화 라이브러리이다. OpenSSL은 암호화와 관련된 다양한 기능을 제공하며, 주로 SSL (Secure Sockets Layer) 및 TLS (Transport Layer Security) 프로토콜을 구현하는 데 사용된다.
     
    notion image
     
    코드를 입력했을 때 OpenSSL 이 없다고 뜬다.
     
    Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions
    https://slproweb.com/products/Win32OpenSSL.html
     
    notion image
     
    openssl 을 설치한다.
     
    notion image
     
    환경 변수 설정도 해준다.
     
    notion image
     
    OpenSSL 설치 후 코드를 실행하면 키 해시 값을 받을 수 있다.
     
    notion image
     
    키 해시 값을 내 애플리케이션 - 플랫폼에 등록해준다.
     
     
    Share article

    {CODE-RYU};

    RSS·Powered by Inblog