crossplatformkorea / react-native-kakao-login

react-native native module for Kakao sign in.
MIT License
360 stars 136 forks source link

Android 스토어/내부 앱 공유 등록 시 invalid key hash 오류 발생 #244

Closed libelize closed 2 years ago

libelize commented 3 years ago

Version of kakao-login libraries

3.3.3

Version of react-native

0.64

Platforms you faced the error (IOS or Android or both?)

안드로이드

Expected behavior

릴리즈 apk 는 정상적으로 카카오 로그인이 되지만, 스토어에 올린 배포 apk 는 카카오 로그인이 안됨

Actual behavior

릴리즈 버전을 스토어에 올려서 배포하면 로그인이 안되고 화면만 깜빡이고 로그인 화면 그대로 있음 카카오 로그인 창을 호출하지 못하는 것으로 보임. 카카오 삭제 후, 로그인 하면, 로그인 계정을 입력하는 창은 나타나지만, 계정 정보를 입력하면, 반응이 없음. 릴리즈 버전은 정상이나, 스토어에 올리면 이런 문제 발생.

  1. 혹시 카카오 해시 값 등록 시, <SHA-1 인증서 지문> | xxd -r -p | openssl base64를 입력하여 나온 키 해시로 등록해야 할까요?
  2. 카카오 redirect url 은 따로 주소를 등록안해도 되는것이 맞죠?

Tested environment (Emulator? Real Device?)

에뮬레이터와 릴리즈 apk 는 정상. 스토어에 등록 후, 배포되는 apk 에서 문제 발생.

bang9 commented 3 years ago

https://developer.android.com/studio/publish/app-signing?hl=ko#enroll 위 문서를 참고하시면 도움이 될것같습니다.

정확하게는 업로드키, 사이닝키 두개의 개념이 존재하고 업로드키로 서명하여 APK를 추출한 뒤 업로드하면, 구글에서는 업로드키를 확인 및 제거한 뒤에 사이닝키로 다시 서명을 합니다. 사이닝 키를 구글에서 만들어서 관리하도록 해두셨으면 플레이 콘솔에 들어가셔서 사이닝 키를 찾으신 뒤, 해시를 추출하셔야 할 것 같습니다.


플레이 콘솔 > 앱 선택 > 설정 > 앱 무결성 에 들어가시면, 설정된 사이닝키와 업로드키가 보이실거에요

libelize commented 3 years ago

감사합니다. 내 인증키가 아닌 구글 SHA-1 을 해시키로 바꿔서 처리하니까 잘 되네요. 정말 감사합니다. 사이닝 처리한다라고만 알고 있었지 그렇게 대체 시키는 줄을 몰랐는데 덕분에 문제도 해결하고 한 수 배웠습니다. 감사합니다.

youngseo-im commented 3 years ago

안녕하세요 기존에 카카오 로그인을 잘 사용하고 있었고 바뀐 부분은 APK 에서 AAb로 추출방식을 변경해서 현재는 내부앱테스트에 올려놓고 테스트를 하고 있습니다, 에뮬레이터에서는 카카오 로그인이 되는데 aab로 내부앱공유로 등록된 테스트 앱에서는 카카오 로그인이 안되는 상태인데 따로 해시키를 추가하거나 하는 부분이 필요한가요?

libelize commented 3 years ago

안녕하세요. 제 경우, 샘플 코드를 뜯어보고 라이브러리 함수 철자가 설명이나 유튜브 영상과 다르다는 걸 알았네요. 샘플 코드 한번 살펴보시고 함수 이름들 체크해보세요.

Nothing on You tHe only onE in my eyEs

-----Original Message----- From: @.> To: @.>; Cc: "William @.>; @.>; Sent: 2021-09-20 (월) 20:34:34 (GMT+09:00) Subject: Re: [react-native-seoul/react-native-kakao-login] 안드로이드 앱 스토어 등록 시, 카카오 로그인 안되는 현상 (#244)

안녕하세요 기존에 카카오 로그인을 잘 사용하고 있었고 바뀐 부분은 APK 에서 AAb로 추출방식을 변경해서 현재는 내부앱테스트에 올려놓고 테스트를 하고 있습니다, 에뮬레이터에서는 카카오 로그인이 되는데 aab로 내부앱공유로 등록된 테스트 앱에서는 카카오 로그인이 안되는 상태인데 따로 해시키를 추가하거나 하는 부분이 필요한가요? — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

bang9 commented 3 years ago

안녕하세요 기존에 카카오 로그인을 잘 사용하고 있었고 바뀐 부분은 APK 에서 AAb로 추출방식을 변경해서 현재는 내부앱테스트에 올려놓고 테스트를 하고 있습니다, 에뮬레이터에서는 카카오 로그인이 되는데 aab로 내부앱공유로 등록된 테스트 앱에서는 카카오 로그인이 안되는 상태인데 따로 해시키를 추가하거나 하는 부분이 필요한가요?

@youngseo-im 내부 앱 공유의 경우, 별도의 키로 서명이 처리됩니다. 내부 앱 공유 키로부터 별도로 추출하신다음 등록하셔야 합니다. 플레이 콘솔 > 앱 선택 > 설정 > 내부 앱 공유 에 들어가시면, 내부 테스트 인증서를 확인하실 수 있습니다.

https://support.google.com/googleplay/android-developer/answer/9844679?hl=ko 내부 앱 공유를 위해 업로드된 아티팩트에는 아무 키로나 서명할 수 있으며 프로덕션 또는 업로드 키로 서명할 필요가 없습니다. Google에서 앱에 자동 생성하는 내부 앱 공유 키로 자동으로 다시 서명됩니다.

libelize commented 3 years ago

문제의 포인트가 다들 다른 것 같아서 메일 보냅니다.

"안녕하세요 기존에 카카오 로그인을 잘 사용하고 있었고 바뀐 부분은 APK 에서 AAb로 추출방식을 변경해서 " 부분에서 '기존에 카카오 로그인을 잘 사용하고 있었고' 란 언급이 있었는데, apk 로 구글 콘솔에 올리면 잘 됐나요?

저는 잘 됐다고 생각하고 답변을 드렸고, 그런게 아니라면, 다른 답변을 주신 분들의 케이스가 맞습니다. 구글 사이닝에 해시키를 등록하셨다면, 해당 키로 카카오 해시키를 발급 받으셔야 해요.

제 경우 둘 다 경험하긴 했는데 apk 로 구글 콘솔에 올려 로그인이 잘 됐다면, 레퍼런스 문서와 유튜브 동영상과 함수 이름 및 철자가 달라 발생한 문제였습니다.

Nothing on You tHe only onE in my eyEs

-----Original Message----- From: "HYUNGU, @.> To: @.>; Cc: "William @.>; @.>; Sent: 2021-09-23 (목) 14:47:48 (GMT+09:00) Subject: Re: [react-native-seoul/react-native-kakao-login] 안드로이드 앱 스토어 등록 시, 카카오 로그인 안되는 현상 (#244)

안녕하세요 기존에 카카오 로그인을 잘 사용하고 있었고 바뀐 부분은 APK 에서 AAb로 추출방식을 변경해서 현재는 내부앱테스트에 올려놓고 테스트를 하고 있습니다, 에뮬레이터에서는 카카오 로그인이 되는데 aab로 내부앱공유로 등록된 테스트 앱에서는 카카오 로그인이 안되는 상태인데 따로 해시키를 추가하거나 하는 부분이 필요한가요?

내부 앱 공유의 경우, 별도의 키로 서명이 처리됩니다. 내부 앱 공유 키로부터 별도로 추출하신다음 등록하셔야 합니다.

https://support.google.com/googleplay/android-developer/answer/9844679?hl=ko 내부 앱 공유를 위해 업로드된 아티팩트에는 아무 키로나 서명할 수 있으며 프로덕션 또는 업로드 키로 서명할 필요가 없습니다. Google에서 앱에 자동 생성하는 내부 앱 공유 키로 자동으로 다시 서명됩니다.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or unsubscribe. Triage notifications on the go with GitHub Mobile for iOS or Android.

youngseo-im commented 3 years ago

답변 감사합니다 : ) 저의 경우에는 내부 앱 공유의 별도의 키로 서명을 처리해야되는게 맞았습니다 ~!