최근 사용하는 로그인 기능이 있는 앱이면 절반 이상이 카카오/구글/네이버/애플 등 소셜 로그인을 제공하고 있다고 느꼈습니다. 사용자 입장에서 별도의 회원가입 없이 간편하게 서비스를 이용할 수 있다는 점이 장점이라고 생각했고, 팝콘 프로젝트에서도 이 장점을 제공하고자 소셜 로그인 도입을 결정했습니다.
팀원들과 논의하여 다음 3가지 플랫폼을 선택했습니다.
이번 정리에서는 카카오 로그인의 구현 과정을 중심으로 다뤘습니다. 초기 구현부터 Clean Architecture 적용, 서버 연동까지의 전 과정을 정리해봤습니다. 🫡
카카오톡으로 로그인 (권장): 카카오톡 앱이 설치되어 있을 때 앱 간 전환을 통한 인증방법
카카오 계정으로 로그인 (대체): 카카오톡 미설치 시 웹 브라우저를 통한 인증방법
(사용자 환경에 따라 자동으로 분기 처리하여 적절한 UX 제공을 시도하기!)
idToken: 서버에서 사용자 신규/기존 여부 판단 및 인증에 사용
accessToken, refreshToken: 서버 응답으로 받은 토큰을 안전하게 Keychain에 저장
(토큰 만료 시 자동 갱신 로직 구현하기!)