앱 권한에 대해 정리를 해볼 것이다. 최근 번아웃이 오면서 개발 공부에 대한 정리를 조금씩 미뤘었는데 다시 키(舵)를 잡아보려고 한다.
우선 사용자가 어플리케이션 내부로 들어와서 서비스를 이용하기 전에 등록해야하는 로그인/회원가입의 로직부터 정리할 필요가 있다. 필요한 내용을 다음과 같이 리스트업을 해보았다.
- 소셜 로그인 방식(Google/Apple)
- 유저 정보 처리
- 토큰 처리(Local Storage 저장)
- SignIn/SignOut
- 회원가입시 필요한 로직
- 휴대폰 인증 구현
- 필요한 정보 정리(이메일, 이름, 지역, 나이 ~ )
- 앱 권한
1번은 처음 공부했을 때와는 달리 대략적은 틀과 구현 방법에 대해서는 알고 있기 때문에 큰 걱정은 없다. 가장 먼저 소셜 로그인을 통해 받아온 유저정보/토큰 중에서 필요한 정보를 storage에 저장한 뒤, 백단에 넘겨주면 백엔드 개발자가 해당 유저가 우리 서비스에 가입된 유저인지 아닌지에 대한 판별을 나에게 다시 남겨줄 것이다. 이를 분류하여 '만약 해당 유저가 우리 서비스에 가입이 되어있다면' 바로 홈뷰로 넘겨주고, 그렇지 않다면 회원가입뷰로 넘겨줄 것이다.
2-2번의 경우 정보에 대한 분류가 픽스가 된다면 Typescript 상에서 Type 지정만 따로 클래스에서 export 해주고 API 통신의 post를 통해 날려주면 될 것이다. 휴대폰 인증과 앱 권한에 대한 것은 스터디가 필요하다. 카메라/앨범 접근 허용에 대한 권한을 카메라/앨범이 직접적으로 필요할 시에 모달을 날려주는 것이 합리적으로 보이지만 이 부분은 조금 더 스터디가 필요하며, 그 외 위치나 마이크 등과 같은 권한을 회원가입 로직의 초반에 넣을 것인지, 후반에 넣을 것인지도 공부가 필요하다.
따라서, 사용자가 앱을 실행시키고나서부터 홈뷰까지 도달하기의 플로우는 다음과 같다.
Splash Screen ▶ (소셜)로그인 ▶ 회원가입뷰(또는 홈뷰) ▶ 휴대폰 인증 ▶ 필수 정보 입력 ▶ 접근 권한 확인 ▶ 홈뷰
NEXT) 앱 권한 정리
'Frontend > Auth' 카테고리의 다른 글
휴대폰 본인인증 구현 (0) | 2022.01.20 |
---|---|
앱 권한에 대한 것 / react-native-permissions (3) | 2022.01.19 |
애플 소셜 로그인(1) / @invertase/react-native-apple-authentication (0) | 2022.01.19 |
구글 소셜 로그인(2) / @react-native-google-signin/google-signin (0) | 2021.12.24 |
구글 소셜 로그인(1) / @react-native-google-signin/google-signin (2) | 2021.12.24 |