Merhaba arkadaşlar bu gün ki makalemde firebase de forgot password işlemini göreceğiz.
Bir önceki makalemde firebase de delete işlemine değinmiştim. Buradan okuyabilirsiniz.
package com.example.user.keepingmeontrack; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; import com.google.android.gms.tasks.OnCompleteListener; import com.google.android.gms.tasks.Task; import com.google.firebase.auth.FirebaseAuth; public class ForgotPassDialog extends DialogFragment { Button forgotBtn = addDialog.findViewById(R.id.forgot_button); forgotBtn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { FirebaseAuth auth = FirebaseAuth.getInstance(); final EditText forgotUname = addView.findViewById(R.id.forgot_username); String emailAddress = forgotUname.getText().toString(); if (emailAddress.isEmpty()) { Toast.makeText(getActivity(), "Enter the your email adress", Toast.LENGTH_SHORT).show(); } else { auth.sendPasswordResetEmail(emailAddress) .addOnCompleteListener(new OnCompleteListener<Void>() { @Override public void onComplete(@NonNull Task<Void> task) { if (task.isSuccessful()) { Toast.makeText(getActivity(), "sucsess", Toast.LENGTH_SHORT).show(); forgotUname.setText(""); } else { Toast.makeText(getActivity(), "fail", Toast.LENGTH_SHORT).show(); }); } } }); positiveButton.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { EditText forgotUname = addView.findViewById(R.id.forgot_username); String forgotName = forgotUname.getText().toString().trim(); if (TextUtils.isEmpty(forgotName)) { Toast.makeText(getActivity(), "Failed to send", Toast.LENGTH_SHORT).show(); } else if (!forgotName.matches("[a-zA-Z0-9._-]+@[a-z]+.[a-z]+")) { Toast.makeText(getActivity(), "Invalid email address!", Toast.LENGTH_SHORT).show(); }} }); } }); return addDialog; }}
Password reset’leme işlemini pop-up ekranı ile yapıyoruz. Kullanıcı forgot password butonu’ nu tıkladığı zaman bir pop-up açılır ve kullanıcının e-mail adresini girmesi istenir. Girilen mail adresi sendPasswordResetEmail methoduna gönderilerek reset’leme işleminin yapılması sağlanır. Bu method’dan dönecek değere göre reset işleminin doğruluğu kontrol edilir.
Bir makalenin daha sonuna geldik, esenle kalın..