안드로이드 앱개발

[SimpleChatApp] Google Sign In

growbook91 2023. 3. 21. 15:33

원래는 몇 일차로 했는데 오늘은 google sign in에 대해서 다루어 보려고 하기 때문에 제목을 google sign in으로 했다.

사실 어제부터 firebase를 시작했는데 생각해보니까 제대로 firebase로 데이터를 다룰려고 하면 로그인부터 해야 할 것 같아서 먼저 제일 기본적이고 중요한 google sign in을 구현하려고 했다.

 

선택지

크게 세 가지 선택지가 있었다.

 

- 기본적인 google Sign In

- One Tap Sign-in

- Firebase Auth 사용하기

 

일단, 세 가지 다 시도는 해봤다. 제일 먼저 One Tap Sign-in이 제일 멋있을 거 같아서 해봤는데 예제 코드가 너무 불친절했다. 그리고 One Tap Sign-in은 login 화면을 따로 구현하지 않고 bottom에서 작은 창이 올라온다. 암튼 멋있지만 불친절한 코드 때문에 구현까지 했지만 로그인한 user를 어떻게 다루어야 할 지 모르겠어서 일단 포기했다.

https://stackoverflow.com/questions/61768804/getting-16-cannot-find-a-matching-credential-when-doing-one-tap-sign-in-and-s

(이건 one Tap Sign-in을 구현하면서 맞딱뜨린 에러인데, 나중에 구현할 일이 있으면 꼭 봐야 할 것 같아서 첨부한다.)

 

그 다음으로 Firebase에서도 해봤는데 flutter로 할 때랑 다르게 개복잡했다. 그래서 첫 구현인 나에게는 기본적인 google sign in이 최적이라고 생각했다. 

 

https://developers.google.com/identity/sign-in/android/sign-in

 

Android 앱에 Google 로그인 통합  |  Authentication  |  Google Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 의견 보내기 Android 앱에 Google 로그인 통합 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요

developers.google.com

해당 doc을 참고해서 구현해봤는데 예제코드도 친절하고 설명도 많았다. 다만, startActivityForResult 같은 함수가 deprecated됐다고 하긴 한다. 

 

로고

그냥 button만 띡 두기엔 애매해서 멋진 앱 관련 이미지를 만들기로 했다.

https://www.brandcrowd.com/maker/logo/67010c44-aec9-42f2-8de3-674ccd630ec0/draft/c33508be-9154-4d7b-ac1f-9b8a90e23d84

 

Classic Simple Letter Logo | BrandCrowd Logo Maker | BrandCrowd | BrandCrowd

 

www.brandcrowd.com

이 사이트에서 내 앱 이름을 치면 다양한 디자인을 만들어준다. 개쩔었다. 그래서 앱 로고도 바꾸고 로그인 화면도 꾸몄다.

 

생각보다 괜찮은 디자인에 놀라버렸다.

간만에 구현하기 빡센 기능이었는데 이것저것 공부하면서 구현해보니까 성취감이 너무 좋았다. 이 맛에 앱개발하나 보다ㅎㅎ

'안드로이드 앱개발' 카테고리의 다른 글

[SimpleChatApp] LiveData를 ViewModel없이 구현  (0) 2023.03.25
[SimpleChatApp] 5, 6일차  (0) 2023.03.25
[SimpleChatApp] 3일차  (0) 2023.03.20
[SimpleChatApp] 2일차  (0) 2023.03.17
[SimpleChatApp] 1일차  (0) 2023.03.16