[Android] : 카카오톡 계정 로그인 Error

Murjune·2023년 9월 24일
0

Trouble Shooting

목록 보기
2/2
post-thumbnail

맥북이 고장나, 새로운 환경에서 프로젝트를 해야했는데 카카오톡 로그인이 안됐다.
현재, 필자의 프로젝트는 카카오톡 api를 통해 소셜 로그인을 하고 있다.

에러 발생!

카카오 로그인은 1) 카카오톡 로그인(카카오톡 앱이 있다면) 2) 카카오 계정 로그인 2가지 방식을 지원하는데, 에뮬레이터로 로그인을 하기 때문에 현재 카카오톡 계정 로그인을 시도하였다.

그런데, 위와 같은 error가 발생하여 로그인이 되지 않았다.
401 error라는 것은 권한 문제인거 같은데..? 라는 생각을 하며 계정 로그인 쪽 코드를 살펴보았다.

코드를 봐도 어떤 점 때문에 문제가 발생하는지 감이 안잡혔고, 공식문서를 천천히 읽으면서 내가 놓친 점이 있는지 확인해봤다.

공식 문서

카카오 공식문서

문제는 플랫폼에 키 해시를 등록하지 않았기 때문에 발생한 것이였다(너무 오랜만에 새로운 환경에서 작업을 하다 보니 이 점을 까먹었다..)

위의 사진을 대충 정리하자면, 내 안스 환경의 키해시를 플랫폼에 등록을 해둬야 카카오 API를 사용할 수 있다는 것이다. 등록을 해두지 않으면 아까처럼 401 AuthError가 뜰 것이다라는 말이다.

따라서, 이제 내 안스 환경의 키 해시값을 카카오 플랫폼에 등록만 해주면 된다!

해결 + 키 해시 뽑는 법

cmd 창을 통해 키 해시값을 가져오는 방법도 있지만, 나는 sdk에서 지원하는 Utility를 사용해서 해시값을 가져왔다(이유는 현재 window 환경이기 때문에 추가 설정을 해주기 귀찮기 때문이다..)

@HiltAndroidApp
class HousApplication : Application() {
    override fun onCreate() {
        super.onCreate()
        KakaoSdk.init(this, KAKAO_NATIVE_APP_KEY)
        if (BuildConfig.DEBUG) { // 디버그 환경
            var keyHash = Utility.getKeyHash(this)
            Timber.plant(HousDeBugTree())
            Timber.d("keyHash : $keyHash") // 디버그 키 해시값을 확인
        }
    }
}

이제 해시값을 아래 Android 플랫폼에 넣어준 후, 프로젝트를 다시 시작하면 무사히 로그인에 성공할 것이다!
`

키 해시에 대한 자세한 내용은 아래 링크를 참고하길 바란다.
공식문서 - 키 해시 값 가져오는 법

회고

앞으로, 크고 작은 error 경험을 정리하고자 한다.
아무래도 한 번 겪은 error는 반복적으로 경험하기 마련이니까..
그 동안 공부한 내용 혹은 프로젝트 경험을 글로 정리하고 싶은데 생각보다 쉽지 않다.
그래도, 틈틈히 내 경험들을 글로 작성하여 누군가에게 도움이 된다면 좋겠다 :D

profile
열심히 하겠슴니다:D

0개의 댓글