Merhaba arkadaşlar bu gün ki dersimizde Email ve password ile firebase de kullanıcı kayıt işlemlerini göreceğiz.
Bir önceki makalem de firebase ile ilgili örnek kod yazdık. Öncelikle onu okumanızı tavsiye ederim. Buradan okuyabilirsiniz.
public class RegisterActivity extends BaseActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); database = FirebaseDatabase.getInstance(); myRef = database.getReference("database"); mAuth = FirebaseAuth.getInstance(); saveusers(); } public void saveusers() { mAuth.createUserWithEmailAndPassword(signupEmail.getText().toString(), signupPassword.getText().toString()) .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { @Override public void onComplete(@NonNull Task<AuthResult> task) { if (task.isSuccessful()) { Toast.makeText(RegisterActivity.this, "Signup Success!", Toast.LENGTH_SHORT).show(); //create a table in the firebase and add the new user information FirebaseUser user = mAuth.getCurrentUser(); Users newUser = new Users(signupUsername.getText().toString(), user.getEmail(), user.getUid()); myRef.child("users").child(user.getUid()).setValue(newUser); saveUser(newUser); // come back to login screen LoginFragment fragment = new LoginFragment(); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.replace(R.id.frame_layout, fragment); transaction.commit(); finish(); } else if(!task.isSuccessful() && flag ) { Toast.makeText(RegisterActivity.this, "Email address wrong or your password is too easy please change your password.", Toast.LENGTH_SHORT).show();} } }); }
Örnek kodu inceleyecek olursak, öncelikle firebase bağlantılarımızı yapıyoruz. Sonra saveusers methodunu çağırarak alınan kullanıcı adı ve şifre üzerinde gerekli işlemler yapılır.
if (task.isSuccessful()) kontrolü ile kayıt işleminin durumu kontrol edilir. Eğer kayıt işlemi başarılı ise ekrana Toast mesajı ile kayıt başarılıdır yazılır. Kayıtlı kullanıcıların bilgilerini bir tabloda tutabilmek için kayıt işlemi başarılı olan kullanıcılar bilgileri aynı zaman da users tablosun kaydedilir. Son olarak Register sayfasından Loging sayfasına geçiş ayarlanmıştır. Login ve register sayfaları fragment olduğu için sayfalar arası geçiş için intent yerine FragmentTransaction kullanılmıştır. Kayıt işlemi başarısız olduğun da son else blogu çalışır ve ekrana Toast mesajın ile kullanıcı adı ve şifreniz hatalıdır yazısı yazılır.
Bir makalenin daha sonuna geldik, esenle kalın..