현재 Swift로 카카오 소셜 로그인을 구현하고 있습니다.
Developer에서 가이드 해준 대로 정확히 구현하고 있으며, iOS Deployment Target 은 13.2 이므로 SceneDelegate에 handleOpenUrl을 추가했습니다.
info.plist쪽의 LSApplicationQueriesSchemes와 URL Types도 정상적으로 입력하였습니다.
메인 ViewController에서 카카오톡으로 로그인을 해서 성공하면, 다른 ViewController로 Push 해서 계정 정보를 나타내는 형태로 구현 했습니다.
Xcode의 시뮬레이터를 이용하면 카카오톡이 설치 되어있지 않기 때문에 loginWithKakaoAccount 가 정상적으로 수행되며, 토큰이 발급되고 계정정보를 정상적으로 가져오는 것을 확인할 수 있습니다.
하지만 실제로 제가 사용하는 아이폰을 연결해서 앱을 설치하고 실행하면 loginWithKakaoTalk 에서 아무런 결과도 전달 받지 못하고 카카오톡으로 넘어갔다가 다시 제 앱으로 돌아오고 메인 ViewController로 되돌아오는 현상이 일어납니다.
반복적으로 수행해도 계속 메인 ViewController로 되돌아옵니다.
혹시 해결하는 방법을 알 수 있을까요?
아래의 코드에서 디버그를 걸어서 확인해 본 결과 print(error) 와 print(“loginWithKakaoTalk() success.”) 둘다 실행이 되지 않습니다.
// 카카오톡 설치 여부 확인
if (UserApi.isKakaoTalkLoginAvailable()) {
UserApi.shared.loginWithKakaoTalk {(oauthToken, error) in
if let error = error {
print(error)
}
else {
print(“loginWithKakaoTalk() success.”)
_ = oauthToken
}
}
}