kakao 연동 SDK 사용방법


앱 아이콘 크기

128 x 128, jpg, gif, png < 250kb

디버그 키 해시

앱 개발을 위하여 개발자의 개발 환경에 맞는 디버그 키 해시(Debug key hash)를 생성하여 앱을 등록(sign)하여야 합니다. 디버그 키 해시는 앱을 인증하는데 사용됩니다. 만약 여러 명의 개발자가 앱의 개발에 참여하고 있다면 각 개발자들의 개발 환경에 따라 디버그 키스토어(keystore)가 각자 다르므로 각 디버그 키 해시를 모두 등록해야 합니다.

Mac OS keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug.keystore -storepass android -keypass android | openssl sha1 -binary | openssl base64

릴리즈 키 해시

앱 개발이 완료된 후, 배포를 위해 릴리즈(Release) 빌드 APK를 생성할 경우, 디버그 키스토어(Keystore)가 아닌 .jks 확장자를 가진 릴리즈용 키스토어로 사인(sign)합니다. 터미널에 아래 명령어를 입력하여 릴리즈 키 해시를 구합니다.

Mac OS keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | openssl base64

google play store 앱 키 사용할 경우

echo “플레이스토어콘솔에서 앱 서명 부분 SHA-1 인증서 지문” | xxd -r -p | openssl base64

ex) keytool -exportcert -alias thirtyfitapp -keystore /Volumes/Data/AndroidKeystore/ThirtyFitApp | openssl sha1 -binary | openssl base64

카카오 SDK에서 출력하는 법 import com.kakao.sdk.common.util.Utility

var keyHash = Utility.getKeyHash(this) debug일떄 release 일 때 다른 값이 나온다.

shit! 콘솔에서 구한 키해시, 릴리즈 앱에서 출력한 키 해시, 구글 콘솔에서 구한 키 해시 다 다름!!! aab 포맷으로 구글에 올리면 콘솔에 있는 키로 해시 만들어야됨!

콘솔에 가서 앱 무결성 에 가서 SHA-1 인증서 지문을 복사 echo “{복사한 인증서 지문}” | xxd -r -p | openssl base64 echo “0D:A5:7B:EE:12:34:56:78:90:D2:31:DD:E9:C7:A3:8B:47:37:77:30” | xxd -r -p | openssl base64

iOS 에서 카카오 SDK 사용하려면…

infoplist 또는 info 탭에서

LSApplicationQueriesSchemes 항 만들고, item0 : string : kakaokompassauth <– 카카오 로그인 item1 : string : kakaolink <– 카카오 링크

URL Type 가서 URL Schemes에 kakao{앱키} 추가해준다.

func application(…) 에서 초기화 해 준다.

KakaoSDKCommon.initSDK(appKey: "네이티브 앱 키")

Android 에서 카카오 SDK 사용하려면…

build.gradle(Project) 에 리포 설정

allprojects {
    repositories {
        google()
        jcenter()

        maven { url 'https://devrepo.kakao.com/nexus/content/groups/public/' }
    }


}

build.gradle(Module) 에 필요한 것들 설정

dependencies {
  implementation "com.kakao.sdk:v2-user:2.4.1" // 카카오 로그인
  implementation "com.kakao.sdk:v2-talk:2.4.1" // 친구, 메시지(카카오톡)
  implementation "com.kakao.sdk:v2-story:2.4.1" // 카카오스토리
  implementation "com.kakao.sdk:v2-link:2.4.1" // 메시지(카카오링크)
  implementation "com.kakao.sdk:v2-navi:2.4.1" // 카카오내비
}

AndroidManifest.xml 에 인터넷 사용권한 설정

<!-- 인터넷 사용 권한 설정-->
    <uses-permission android:name="android.permission.INTERNET" />

java 8 사용설정 build.gradle(Module)

// Java 8 사용을 위한 build.gradle 설정
android {

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }
}

프로가드 설정하기 (선택사항)

앱 배포 시, 코드 축소, 난독화, 최적화를 하는 경우, 카카오 SDK를 제외하고 진행하기 위하여 ProGuard 규칙 파일에 다음 코드를 추가합니다.

-keep class com.kakao.sdk.**.model.* { <fields>; } -keep class * extends com.google.gson.TypeAdapter

초기화

// Kakao SDK 초기화
    KakaoSdk.init(this, "{NATIVE_APP_KEY}")

개발자 사이트에 키 해시 등록해야됨

,

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다