카카오 로그인 관련하여 문의 남겨봅니다

javascript sdk를 적용해 하이브리드 앱에서 카카오로 로그인 할 수 있도록 작업하는 중입니다.
ios는 커스텀스키마 사용해서 앱이 있으면 띄워주고 인증하는게 쉽게 되었는데 안드로이드가 잘 되지 않습니다…

웹뷰를 새로 생성하여 웹 자체로 로그인하는 것은 성공했지만, 카카오 앱이 깔려있음에도 실행되지 않아 문의를 남겨봅니다.

shouldOverrideUrlLoading에서
intent://가 포함된 것이나 시작하는게 안들어와서 웹으로만 로그인이 진행됩니다. 혹시 해결방법이 있을까요…?

사용하고 계신 클라이언트의 user agent를 알 수 있을까요?

음… 뭘 가져와야할지 몰라서 일단 안드로이드에서 getUserAgentString를 찍어봤습니다. 물어보시는게 이것이 맞나요?

2020-08-04 16:04:33.018 D/MainActivity: getUserAgentString : Mozilla/5.0 (Linux; Android 8.0.0; SM-G935S Build/R16NW; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/84.0.4147.105 Mobile Safari/537.36

console.log(navigator.userAgent);
VM80:1 Mozilla/5.0 (Linux; Android 8.0.0; SM-G935S Build/R16NW; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/84.0.4147.105 Mobile Safari/537.36

혹시 몰라 chrome://inspect로 콘솔로그 찍은 것도 올려봅니다.

@qnemaqnema

원인 분석을 위해 사용하신 JS SDK의 버전 정보와 App ID 부탁드립니다.

@holden.joo
Kakao Javascript SDK for Kakao Open Platform Service - v1.39.3
App ID는 456321입니다.
퇴근시간 이후 인데도 답변 달아주셔서 감사합니다.

바쁘실텐데 죄송합니다. 시간이 조금 촉박해서요. 원인 분석이 오래걸릴까요?

사용하시는 Kakao.Auth.login 함수는 모든 웹뷰에 대해 간편로그인을 지원하진 않습니다.
Kakao.Auth.login 함수에서 간편로그인을 사용하려면 아래와 같이 user agent를 변경하셔야 합니다. (wv, Version 제거)

Mozilla/5.0 (Linux; Android 8.0.0; SM-G935S Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.105 Mobile Safari/537.36

모든 웹뷰에 대해서 간편로그인을 지원하는 방향에 대해 검토를 하고 있지만,
빠른 적용을 위해서 위와 같은 방법을 안내드립니다.

참고)
최근에 추가된 Kakao.Auth.authorize 함수의 경우는 모든 웹뷰에서 간편로그인을 지원하고 있습니다.
아래 링크 참고 해주세요.
https://developers.kakao.com/docs/latest/ko/kakaologin/js#login

2개의 좋아요

답변감사합니다! 좋은하루 되세요.

말씀해주신대로 적용해본 결과 정상적으로 작동하였습니다. 감사합니다!!