소셜 로그인은 소셜 네트워킹 사이트의 정보를 이용해 타사 애플리케이션과 플랫폼에 손쉽게 로그인할 수 있는 프로세스를 말한다. 이 프로세스는 계정을 만들 필요 없이 편리한 방법을 제공하여 로그인 및 등록 경험을 간소화하는 목적으로 개발되었는데, 사용자의 관점에서 보았을 때 소셜 로그인은 자격 증명을 따로 만들 필요 없이 번거로운 등록 절차를 건너뛰어 사이트와 앱에 원활하게 액세스할 수 있는 방법이다. 개발자와 기업의 관점에서는 사용자 확인을 간소화하는 동시에 개인화를 목적으로 사용자 데이터에 더욱 안정적으로 액세스할 수 있는 방법을 제공한다는 점에서 매력적인 기능이다. 그러나 firebase와 같은 클라우드 플랫폼에서는 구글, 애플, 페이스북 등 이러한 기업들에 한 해서는 쉽게 구현할 수 있도록 연동이 되어 있지만 네이버나 카카오톡의 경우 제공되어 있지 않아서 개발자가 직접 구현하여 연동을 해야 하는 번거로움이 있다. 그러나 다행히도 카카오톡과 네이버 둘다 모두 소셜 로그인 API를 제공하고 있고, 디벨로퍼 홈페이지에 개발자가 쉽게 구현할 수 있도록 자세한 가이드라인이 제시되어 있다. Kakao sdk for flutter는 2022년 3월 배포된 정식 서비스 버전부터는 더욱 간결하게 편리해진 사용성을 제공하는데, 이번 프로젝트를 통해 소셜로그인이 무엇이고, 어떻게 카카오톡 소셜 로그인을 연동하는지 알아보도록 하고자 한다.
<br>
<br>
## 개발시 발생했던 문제 및 발생할 수 있는 문제
- API 키 및 시크릿 키 설정: 카카오톡 소셜 로그인을 구현하기 위해서는 카카오 개발자 웹사이트에서 API 키 및 시크릿 키를 발급받아야 한다. 이 과정에서 키를 잘못 설정하거나 유효하지 않은 키를 사용할 경우, 로그인 요청이 실패하거나 작동하지 않을 수 있다. 개발을 하면서 겪었던 문제는 Android Manifest의 Meta data를 입력하는 부분에 Native App Key를 입력하는 부분이 있는데, `kakao[Native App Key]` 를 입력해야 하지만 `[Native App Key]` 로 입력하거나 `kakao${Native App Key}` 를 입력하여 `403 Error`가 발생하기도 하였다. 만일 Native App key가 123456이라 할 때, `kakao123456`으로 입력해야만 인증이 완료된다.
...
...
@@ -17,6 +18,7 @@
- 네트워크 연결 및 API 요청 오류: 카카오톡 소셜 로그인을 구현하는 과정에서 네트워크 연결이 원활하지 않거나 API 요청에 문제가 발생할 수 있다. 이는 서버 문제, API 업데이트 또는 잘못된 요청 구현 등으로 인해 발생할 수 있다.
<br>
<br>
## 끝으로
Kakao는 소셜 로그인 이외에도 지도/로컬, 톡캘린더, 카카오내비와 같이 여러가지 서비스를 제공하고 있어 개발자는 제시된 가이드라인에 따라 쉽게 앱 내에 연동을 할 수 있도록 편의성을 제공하고 있다. 이밖에도 KoGPT, Karlo 와 같은 요새 화두인 생성형 AI 기술을 기반으로 된 서비스를 제공하고 있다. KoGPT는 제시된 한국어를 이해하고 사용자의 의도에 맞춘 문장을 생성해 제공하는 서비스이며 Karlo는 사용자가 입력한 문장과 이미지를 기반으로 새로운 이미지를 만드는 기능을 제공하는 서비스이다. 따라서 IT 서비스업 기업들은 개발자가 직접 모델을 설계하며 구현해야 하는 번거로움을 줄이기 위해 여러가지 서비스를 제공하고 있는데, 앞으로 개발자가 갖춰야 할 소양 중 하나가 이런 풍부한 리소스들 사이에 어떻게 효율적으로 활용할 수 있는지에 대한 능력이 요구됨을 한번 더 체감하게 된 계기를 얻을 수 있었다.