소셜로그인과 스팀연동 #2 안드로이드 앱에 적용

안녕하세요. 제이콥입니다.

요즘 이것저것 일끝나고 재밌게 시간을 보내고 있어요. 책도 읽고 개발도하고 운동도하고요.

오늘은 제가 개발중인 앱에 소셜로그인을 적용중인데요. 이부분에 대해 정리해봤습니다.

이 글에서는 대충 이런식으로 동작할 수 있구나.. 그런걸 봐주시면 되겠습니다.

아직 마켓에는 스팀, 비회원 로그인이 업데이트가 안됐습니다! 몇개 버그를 더 수정하고 마켓 업데이트를 할 예정입니다.

다운로드하기 Google Play


1. 지난글 이야기

https://steempeak.com/kr-dev/@jacobyu/2242-summ-about-steem-dapp-with-social-login

지난 글에서는 기존 소셜 로그인 연동 사례에 대해 봤었습니다.

SteemLogin, tokenBB, bukio에 대해 간략하게 소개했었는데요.

저도 소셜로그인을 구현하고있습니다.


2. SEY에 적용

Firebase authentication을 활용해서 구글, 스팀, 익명 로그인을 구현해봤습니다.

이게 글로 잘 설명하려니깐 어렵네요.

구글로 예를 들어보겠습니다.

  1. 로그인을 위해 구글 계정을 선택합니다.
  2. 선택한 계정에 대한 파이어베이스 UID가 생성됩니다. UID는 파이어베이서 auth에 저장됩니다.
  3. 저장된 UID는 영어앱에서 호출 가능하며, 로그아웃을 하지 않는다면 계속 갖고 있습니다.
  4. 이 UID를 활용하여, database에 포인트, 구독 정보 등을 업데이트, 조회합니다.
  5. 앱에서 특정 데이터를 요구할 경우, 값을 반환합니다.

여기서 스팀과 익명 계정도 위의 순서대로 동작합니다. 1번의 경우만 다릅니다.

스팀은 스팀커넥트를 활용하여, 사용자를 확인합니다. 그리고 스팀커넥트에서는 사용자의 아이디, 토큰을 반환합니다.

여기서 사용자의 아이디만 활용해서 파이어베이스 UID를 생성합니다.

다음 과정은 모두 동일합니다.

토큰의 경우 따로 저장하지 않는데, 그 이유는 이 앱에서는 스팀에 보팅이나, 커멘트를 작성하지 않기 때문입니다.

추후, 공유하기 기능을 넣어서 앱 자체에서 포스팅을 할 계획이 생긴다면 그 때는 토큰을 4번에서 저장할 예정입니다.


3. 느낀점? 계획?

이 앱에서는 단순히 계정주인이 맞는지 정도만 확인했습니다.

스팀커넥트가 포스팅키로도 접근 가능하다고 했었던가요? 이걸 한번 확인해봐야겠네요.

포스팅키로 스팀커넥트 토큰을 만들고,

토큰을 파이어베이스 데이터베이스에 저장하는 방식으로요.

그 후, 포스팅 공유기능을 넣어서 영어공부 오늘도 했다! 뭐 이런걸 넣어보고 싶어요.


감사합니다.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다