ios,swift2020. 3. 30. 10:51

[ios]swift firebase auth email login방법

 

private func loadFireBaseSignIn(email : String , password : String)

    {

        Auth.auth().signIn(withEmail: email, password: password) { authResult, error in

            if let error = error

            {

                if let errorCode : AuthErrorCode = AuthErrorCode(rawValue: error._code)

                {

                    print("-> error -> \(error.localizedDescription) -> code -> \(errorCode.rawValue)")

                    

                    switch errorCode.rawValue

                    {

                    case AuthErrorCode.invalidEmail.rawValue:

                        self.makeAlert(title: "error", msg: "이메일 양식이 맞지 않습니다.")

                        return

                    case AuthErrorCode.wrongPassword.rawValue:

                        self.makeAlert(title: "error", msg: "페스워드가 틀렸습니다.")

                        return

                    case AuthErrorCode.userNotFound.rawValue:

                        self.makeAlert(title: "error", msg: "회원등록 되지 않았습니다.")

                        return

                    case AuthErrorCode.operationNotAllowed.rawValue:

                        self.makeAlert(title: "error", msg: "error -> operationNotAllowed")

                        return

                    case AuthErrorCode.userDisabled.rawValue:

                        self.makeAlert(title: "error", msg: "error -> userDisabled")

                        return

                    default:

                        self.makeAlert(title: "error", msg: "error -> \(error.localizedDescription) -> code -> \(errorCode.rawValue)")

                        return

                    }

                }

            }

            else

            {

                //success login

                if let user = authResult?.user

                {

                }

                else

                {

                }

            }

        }

    }

Posted by thdeodls85
ios,swift2020. 3. 30. 10:49

[ios]swift fireabse auth email 회원가입 방법

 

private func loadFireBaseCreateUser(email : String , password : String)

    {

        Auth.auth().createUser(withEmail: email, password:password) { (authResult, error) in

             if let error = error

             {  

                if let errorCode : AuthErrorCode = AuthErrorCode(rawValue: error._code)

                {

                   print("-> error -> \(error.localizedDescription) -> code -> \(errorCode.rawValue)")

 

                   switch errorCode.rawValue

                   {

                   case AuthErrorCode.invalidEmail.rawValue:

                        // 이메일 주소의 형식이 잘못되었음을 나타냅니다.

                        self.setAlert(title: "error", msg: "이메일 양식이 맞지 않습니다.")

                        return

                   case AuthErrorCode.emailAlreadyInUse.rawValue:

                        //  로그인 시도에 사용된 이메일 주소가 이미 존재함을 나타냅니다. fetchProvidersForEmail을 호출하여 사용자가 어느 로그인 시스템을 사용했는지 확인하고, 사용자에게 그중 한 가지 방법으로 로그인하라는 메시지를 띄우세요.

                        self.setAlert(title: "error", msg: "이 이메일로 등록 된 유저가 있습니다.")

                        return

                   case AuthErrorCode.operationNotAllowed.rawValue:

                        // 이메일 및 비밀번호 계정의 사용 설정이 되어 있지 않음을 나타냅니다. Firebase 콘솔의 인증 섹션에서 사용 설정을 하세요.

                        self.setAlert(title: "error", msg: "operationNotAllowed")

                        return

                   case AuthErrorCode.weakPassword.rawValue:

                        // 너무 안전성이 낮은 비밀번호를 설정하려고 했음을 나타냅니다. NSError.userInfo 사전 객체 내의 NSLocalizedFailureReasonErrorKey 필드에 사용자에게 표시할 수 있는 자세한 설명이 있습니다.

                        self.setAlert(title: "error", msg: "weakPassword")

                        return

                   default:

                       self.setAlert(title: "error", msg: "error -> \(error.localizedDescription) -> code -> \(errorCode.rawValue)")

                       return

                   }

               }

            }

            else

            {

                // success

                if let user = authResult?.user

                {

 

                }

                else

                {

                    self.setAlert(title: "error", msg: "error ->")

                }

            }

        }

    }

Posted by thdeodls85