앱 아이콘 크기
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}")