package com.mapps.seproject; import android.app.ProgressDialog; import android.content.Intent; import android.support.annotation.NonNull; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.EditText; 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.AuthResult; import com.google.firebase.auth.FirebaseAuth; public class RegisterActivity extends AppCompatActivity implements View.OnClickListener{ EditText email; EditText password; Button b; TextView loginText; ProgressDialog progress; FirebaseAuth firebaseAuth; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_register); firebaseAuth = FirebaseAuth.getInstance(); if(firebaseAuth.getCurrentUser() != null) { finish(); startActivity(new Intent(getApplicationContext(),MainActivity.class)); // If user is already logged in } progress = new ProgressDialog(this); email = (EditText) findViewById(R.id.etRegEmail); password= (EditText) findViewById(R.id.etRegPassword); b= (Button) findViewById(R.id.bRegister); loginText = (TextView) findViewById(R.id.textLogin); b.setOnClickListener(this); loginText.setOnClickListener(this); } public void registerUser() { String mail = email.getText().toString().trim(); String pass = password.getText().toString().trim(); if(TextUtils.isEmpty(mail)) { Toast.makeText(this, "Enter E-Mail", Toast.LENGTH_SHORT).show(); // Incase Any of the fields are empty return; } if(TextUtils.isEmpty(pass)) { Toast.makeText(this, "Enter Password", Toast.LENGTH_SHORT).show(); return; } progress.setMessage("Registering"); // Progress Bar progress.show(); try { firebaseAuth.createUserWithEmailAndPassword(mail, pass) // Create New Entry .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() { @Override public void onComplete(@NonNull Task<AuthResult> task) { if (task.isSuccessful()) { // On Successful Registration Toast.makeText(RegisterActivity.this, "Registered Successfuly", Toast.LENGTH_SHORT).show(); progress.hide(); } else { Toast.makeText(RegisterActivity.this, "Failed to Register", Toast.LENGTH_SHORT).show(); progress.hide(); //task.getException().getMessage(); } } }); } catch (Exception e) { e.printStackTrace(); Log.i("Registration Fail: ",e.toString()); } } @Override public void onClick(View v) { if(v == b) // Register the current user { registerUser(); } if(v == loginText){ // Go to login activity finish(); startActivity(new Intent(getApplicationContext(),LoginActivity.class)); } } }