하이브리드 앱에서 자바스크립트로 카카오 로그인 구현했을 때 해시키 등록해야 하는 것인지 질문

문의 시, 사용하시는 SDK 버전 정보와 디벨로퍼스 앱ID를 알려주세요.


SDK 버전 : 2.7.7

하이브리드 앱에서 카카오 로그인 기능을 구현하기 위해 자바스크립트로 카카오 로그인 기능을 구현하였습니다.

안드로이드 앱의 경우, 카카오톡이 로그인되어 있을 때는 카카오로 로그인하는 기능이 정상적으로 작동하지만,
카카오톡이 설치만 되어 있고 로그인이 안 되어 있을 때는 카카오로 로그인하는 버튼을 눌러도 아무 반응이 없습니다.
즉, 기대되는 동작은 카카오톡 로그인 페이지로 이동하는 것인데, 이동을 하지 않습니다.

참고로, iOS 앱의 경우에는 카카오톡이 로그인되어 있을 때 “카카오로 로그인하기” 기능이 정상적으로 작동하고,
카카오톡이 설치만 되어 있고 로그인이 안 되어 있을 때는 카카오톡 로그인 페이지로 이동하므로 문제가 없습니다.

안드로이드 앱일 경우에만 문제가 있는데 카카오 로그인 문서를 읽어보아도 원인을 찾을 수 없습니다.

자바스크립트로 구현했기 때문에 안드로이드/iOS 앱의 해시키를 등록하지 않았는데 혹시 그것이 문제일까요?

하이브리드 앱에서 (Android SDK 사용하지 않고) 자바스크립트로 카카오 로그인 기능 구현했을 경우에도 안드로이드 앱의 해시키를 등록해야 하는 것인지 알려주셨으면 합니다.

감사합니다.

안녕하세요.

웹뷰를 사용하는 하이브리드 앱의 경우 키 해시 등록이 불필요 합니다.

카카오톡 미로그인 상태에서 네이티브 환경(android SDK)에서는 이러한 상황이 resultReceiver로 전달되어 인증 오류로 전달되지만, 웹뷰에서는 JS가 사용자의 취소 상태만을 감지하며 그 외 이러한 상태에 대해서는 인지할 수 없는점 참고 부탁드립니다

추가 질문이 있습니다.

저희 쪽에서는 자바스크립트로 다음과 같은 코드를 작성해서 안드로이드 앱과 iOS 앱에서 둘 다 사용하고 있습니다.

Kakao.Auth.authorize({
  redirectUri: ‘${REDIRECT_URI}’, // 앱에 등록된 카카오 로그인에서 사용할 Redirect URI 입력
});

[질문1] iOS 앱의 경우 카카오톡이 설치되어 있고 카카오 미로그인 상태일 때 위 메서드를 호출하면 카카오톡의 로그인 페이지로 넘어갑니다. 안드로이드 앱에서는 똑같은 동작이 안 되는데 이것은 안드로이드의 특성으로 인한 것입니까? 그게 아니라면 카카오 로그인 SDK의 향후 버전에서 해당 기능을 지원할 계획이 있으십니까?

[질문2] 카카오 로그인이 안 되어 있을 경우에 카카오톡 로그인 화면으로 넘어갈 수 없다면, 사용자에게 "먼저 카카오 로그인을 해주세요"라는 메시지를 표시하려고 합니다. 저희 쪽에서 이런 기능을 구현하기 위해 카카오 로그인 상태를 가져올 수 있는 API가 있다면 알려주셨으면 합니다. 또는 카카오 로그인 상태를 또 다른 방법으로 리턴 받을 수 있는 방법이 있다면 알려주십시오.

안녕하세요.

iOS와 Android 디바이스 간 차이는 각 OS가 제공한는 기능적 특성에 따라 화면에 머물러 있어야만 하거나 resultReceiver로 결과를 전달할 수 있거나 하여 동작 차이가 있습니다.

다만, 안드로이드 웹뷰에서는 이러한 결과 응답에 대한 처리를 직접 할 수 없기에 미로그인 상태의 인지가 어려운 상황인점, 이와 관련하여 현재로서는 별도의 대응이 어려운 점 양해 부탁드립니다.