공부/React(+Native)

내 기기에서만 카카오 로그인이 될 때 의심해봐야 할 것

chulphan 2025. 8. 2. 10:37

최근에 예전 직장 동료들과 보드게임 후기 기록 안드로이드 앱을 React Native 를 이용해서 구현하고 있습니다.

 

구현을 시작한 지 약 반 년 후, 드디어 플레이 콘솔에 내부 테스트를 올릴 수 있게 되었는데요.

 

내부 테스트에 올리는 과정 자체도 쉽지 않았지만 테스터들에게 공개 된 후 문제를 해결하는 것도 쉽지 않았습니다.

 

제 여자친구와 팀원에게 피드백이 왔습니다..

 

카카오 로그인이 되지 않는다!

 

그래서 릴리즈 모드로 실행 후 로그인을 시도하니 실제로 로그인이 되지 않았습니다.

 

이 문제는 삽질을 하기는 했지만 프로덕션 keystore 를 해시값으로 변환 후 카카오 디벨로퍼에 등록하고 나서 해결이 되었습니다.

 

버전을 올려 배포한 후 해결이 됐다고 알립니다! (의기양양하게)

 

하지만 얼마 지나지 않아 여전히 로그인이 되지 않는다는 피드백을 받습니다....

그런데 내 기기에서는 잘 되는데????

 

다음의 문제에 대해 의심하기 시작합니다

1. 웹 프론트 팀원과 백엔드 팀원이 로그인 문제로 피드백을 주고 받고 있어 이 것이 문제인가? 했지만 iOS 에서는 로그인이 잘 되었으므로 패스

2. 처음 앱을 시작한(회원가입 한 적이 없는) 사람이 로그인을 시도? -> 이미 가입을 한 사람도 로그인이 되지 않으므로 이 문제도 아님..

 

한참을 고민하다가 한 가지 생각을 떠올립니다

'나한테만 있고 다른 사람들한테 없는게 뭐지??'

 

바로 릴리즈 버전으로 만들어 놓은 keystore 였습니다!!!!

 

그렇지만 이해를 하지 못했습니다. '이걸 이용해서 빌드 한 다음 플레이스토어에 올라가는 건데 왜 안되는거지..??'

 

구글링을 조금 해보니 이유를 알게 되었습니다

 

플레이스토어에 앱을 올리면 구글에서 앱 서명을 관리하는 거였습니다.

이 앱 서명이 카카오 디벨로퍼에 등록 되어 있지 않으니 카카오 로그인이 아예 동작하지 않는 거였지요..

 

앱 서명 찾는 방법

 

SHA-1 인증서 지문 값을 복사해서 다음 명령어를 실행하면 카카오 디벨로퍼에 등록 할 해시값을 얻을 수 있습니다

 

echo YOUR_SHA-1_HASH | xxd -r -p | openssl base64

 

여기서 나온 값을 카카오 디벨로퍼에 등록하면 테스터 기기에서도 로그인이 정상적으로 동작하게 됩니다!!

 

내 컴에서는 잘 동작하는데 다른 데에서는 동작하지 않을 때에는 나한테 무엇이 있는지 상대에는 무엇이 없는지를 생각하면 해결방법이 보일겁니다!!

 

즐거운 개발하세여~~!!

 

[해결책을 얻은 블로그] 감사합니다!!

https://kakao-tam.tistory.com/53