카카오 간편로그인 중 아이폰

앱ID : 649696
(테스트서버) 로그인 URL: https://uat.untactm.kr/login/home

지난번 아주 친절한 답변으로 대부분 해결이 되었습니다.
안드로이드에서는 전혀 문제가 없는데 아이폰에서 불편한 점이 발생하였습니다.
카카오 로그인을 하면
안드로이드: 깜빡거리며 로그인 후 원하는 페이지로 이동
아이폰(사파리): 아래와 같이 사용중이던 서비스로 이동하여 로그인을 완료해주세요. 라는
문구가 뜨고 닫기를 누르면 그냥 카카오톡이 실행되어 있습니다.
그래서 카카오톡을 닫으면 원래 사이트로 돌아가지 않고 그냥 휴대폰의 초기화면이 되며
원래의 사이트로 돌아가기가 번거롭습니다.
어떤 사이트를 들어가보니 (예: 바이슬림) 저희랑 유사한 방식인데 거기서는 아래 창이 안 뜹니다.
image

해결할 수 있는 방법이 있을까요?
하나 해결하면 새로운 하나의 해결해야할 거리가 나타나네요. ㅠㅠ
부탁드리겠습니다.

안녕하세요.

iOS에서 카카오계정의 ID/PW 입력 없이 카카오톡앱으로 인증 시, 그렇게 처리되는데요.

이는 iOS 정책으로 인한 동선입니다. iOS 플랫폼에서 앱에서 자동으로 특정 브라우저로 돌아가는 것은 불가능하기 때문에 사용자에게 직접 돌아가도록 안내하고 있습니다. 화면 좌측 상단에 “:arrow_backward:︎ Safari” 클릭 시. 원래 위치로 되돌아갈 수 있으며, 되돌아갔을때 로그인되어 있다면 정상 동작입니다.

수동으로 되돌아가는게 불편하지만, ID/PW 입력 없이 안전하게 로그인하는 장점이 있으며 iOS사용자 경험으로 쉽게 익숙해질 수 있어서 이 방식으로 로그인을 권장합니다.


카카오톡앱으로 로그인 하지 않고, 카카오계정으로 로그인 하는 방법이 있는데, JS SDK에서 authorize로 로그인 시, throughTalk 파라메터를 false로 하신다면 카카오톡이 아닌 카카오 계정 페이지로 앱간 이동 없이 로그인 할 수 있습니다.
다만, 해당 브라우저에서 카카오계정에 로그인 안되어 있는 상황이라면 카카오 ID/PW로그인 화면에서 로그인해야합니다.

참고 부탁드려요~

→ 이 말은 카카오톡실행 + 카카오톡로그인과는 별개로
사용하는 브라우저자체에 카카오 계정으로 로그인 되어 있어야 한다는 것이고 이는
인앱 브라우저가 아닌 이상 한번은 카카오에서 제공하는 팝업으로 id/pw 로 로그인을 해야 한다는 의미인가요?

네, 맞습니다. 조금 부연설명드리면

JS SDK에서 authorize로 로그인 시

(1) 기본 throughTalk = true
iOS에서는 위에 문의주신것 처럼 동작합니다.

(2) throughTalk = false
카카오톡앱을 호출하는 것이 아니라 카카오 계정 로그인페이지로 리다이렉트 합니다. (팝업 아닙니다.)
계정 로그인페이지에서 한번은 ID/PW 방식으로 카카오계정로그인 한뒤 리다이렉트 URI로 돌아갑니다.
브라우저에 카카오계정 세션이 살아있다면 ID/PW입력 없이 카카오 로그인 처리됩니다.


JS SDK에서 팝업방식로 로그인 시, 서비스측 인앱브라우저가 아닌 기본 브라우저라면 위와 동일하고 팝업으로 한번은 id/pw 로 로그인하게됩니다.