카테고리 없음

[Android Kotlin] 파이어베이스 회원 비밀번호 변경

얌자 2021. 2. 17. 00:24

로그인한 유저의 비밀번호 변경 기능을 넣어보겠습니다.

 

생각보다 간단하게 가능합니다.

 

 

 

 

 fun findPassword(){
        FirebaseAuth.getInstance().sendPasswordResetEmail(tv2.text.toString()).addOnCompleteListener { task ->
            if(task.isSuccessful){
                Toast.makeText(this, "비밀번호 변경 메일을 전송했습니다", Toast.LENGTH_LONG).show()
            }else{
                Toast.makeText(this, task.exception.toString(), Toast.LENGTH_LONG).show()
            }
        }
    }

 

 

sendPasswordResetEmail(***@gmail.com) 로 가로 안에 해당 이메일로 비밀번호 변경 메일이 보내집니다. 성공할시 메일을 전송했다는 토스트메세지가 뛰어집니다.

간단하죠?

 

 

이렇게 이메일이 와서 링크를 클릭하면 바로 새로운 비밀번호를 설정 가능합니다.

 

 

 

 

 

 

 

 

 

 

myInformation.kt 전체코드

 

 

 

package com.example.carrotmarket


import android.content.DialogInterface
import android.content.Intent
import android.os.Bundle
import android.widget.EditText
import android.widget.Toast
import android.widget.Toolbar
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import com.google.firebase.auth.FirebaseAuth
import com.google.firebase.firestore.FirebaseFirestore
import kotlinx.android.synthetic.main.activity_myinformation.*
import kotlinx.android.synthetic.main.dialog_user.*


class myInformation : AppCompatActivity(){

    private lateinit var auth: FirebaseAuth
    var Firestore: FirebaseFirestore? = null

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_myinformation)

        auth = FirebaseAuth.getInstance()
        Firestore = FirebaseFirestore.getInstance()


        backBtn.setOnClickListener {
            finish()
        }

        password_change.setOnClickListener {
            findPassword()
        }

    }

    fun findPassword(){
        FirebaseAuth.getInstance().sendPasswordResetEmail(tv2.text.toString()).addOnCompleteListener { task ->
            if(task.isSuccessful){
                Toast.makeText(this, "비밀번호 변경 메일을 전송했습니다", Toast.LENGTH_LONG).show()
            }else{
                Toast.makeText(this, task.exception.toString(), Toast.LENGTH_LONG).show()
            }
        }
    }
}