clamp
Clamp
clamp
글쓰기 관리
전체 방문자
오늘
어제
  • 분류 전체보기 (509)
    • IOS (85)
    • SwiftUI+TCA+Combine (9)
    • RxSwift + MVVM (56)
    • Clean Architecture (12)
    • SWIFT (56)
    • iOS - TDD (2)
    • 디자인패턴 (4)
    • CS (56)
      • 알고리즘 (29)
      • 운영체제 (15)
      • 자료구조 (2)
      • 네트워킹 (4)
      • 기타 (6)
    • 회고 (0)
    • Firebase (18)
    • SwiftUI (10)
    • iOS - UIKit (11)
    • iOS - 오픈소스 (6)
    • 코딩테스트 (166)
      • 프로그래머스 (164)
    • 정보처리기사 (14)
    • GitHub (2)
글쓰기 / 관리자

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • uikit
  • Swift
  • ㅅ
  • Q

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
clamp

Clamp

Firebase

IOS - Use Firebase Authentication

2022. 2. 23. 18:26

파이어 베이스 프로젝트의 빌드 -> Authentication으로 이동

사용할 권한을 설정하고 Xcode로 돌아간다.

 

이메일/비밀번호를 가지는 계정정보를 파이어베이스 인증에 전달하는건 로그인 버튼을 눌렀을 때 이다.

 

신규 사용자는 Auth.auch().createUser로 만들 수 있다.

Auth.auth().createUser(withEmail: , password: , completion: ((AuthDataResult?, Error?) -> Void)?)

Firebase Auth SDK에서 Firebase Auth 인증 플랫폼에 전달할 수 있다.

completion클로저 내에서는 인증 받았을 때 AuthDataResult? 객체로,

실패한다면 Error객체로 결과를 받을 수 있다 하지만 순환참조 바지를위해  AuthDataResult? 앞에 [weak sefl] 처리를 해준다.

이하 in 아래에 guard 문으로 순간에 강한 참조로 바꿔준다.

 

만약 신규 사용자가 아니라 기존 가입자일 경우 Auth.auth().signIn을 이용할 수 있다.

Auth.auth().signIn(withEmail: String, password: String, completion: ((AuthDataResult?, Error?) -> Void)?)

 

만약 로그인이 되었다면  Auth.auth().currentUser?.email로 현재 접속자의 이메일을 받아올 수 있다.

let email = Auth.auth().currentUser?.email ?? "실패"

만약 에러가 발생한다면 Firebase에서 에러 코드를 받을 수 있다.

 

대충 이 코드가 만약 에러가 있다면? 이런 느낌.

if let error = error{
   //내부 동작을 수행  
            }

에러의 설명을 볼 수 있는 코드

error.localizedDescription //에러의 설명이 담겨있음

 

로그아웃 구현.

let firebaseAuth = Auth.auth()
        do{
            try firebaseAuth.signOut() //로그아웃시도
            //로그아웃이 성공한다면 루트뷰로 돌아간다.
            self.navigationController?.popToRootViewController(animated: true)
            //에러가 발생한다면
        } catch let signOutError as NSError{
        	//라벨에 에러 내용을 나타낸다
            welcomeLabel.text =  signOutError.localizedDescription
        }
    }

 

저작자표시 비영리 동일조건 (새창열림)
    'Firebase' 카테고리의 다른 글
    • IOS - Firebase 비밀번호 변경
    • IOS - Firebase Auth Google login
    • IOS - Use Firebase
    • OAuth
    clamp
    clamp
    주니어 iOS개발자의 발악!!!!!!!

    티스토리툴바