SignupActivity.java
package project.;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.text.TextUtils;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ProgressBar;
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;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* Created by hp on 2/10/2018.
*/
public class SignupActivity extends AppCompatActivity {
private static final String TAG = “SignupActivity”;
private FirebaseAuth mAuth;
private ProgressBar progressBar;
EditText _nameText;
@BindView(R.id.input_email) EditText _emailText;
@BindView(R.id.input_password) EditText _passwordText;
@BindView(R.id.button_signup) Button _signupButton;
@BindView(R.id.link_login) TextView _loginLink;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signup);
mAuth = FirebaseAuth.getInstance();
ButterKnife.bind(this);
_signupButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// signup();
String email = _emailText.getText().toString().trim();
String password = _passwordText.getText().toString().trim();
if (TextUtils.isEmpty(email)) {
Toast.makeText(getApplicationContext(), “Enter email address!”, Toast.LENGTH_SHORT).show();
return;
}
if (TextUtils.isEmpty(password)) {
Toast.makeText(getApplicationContext(), “Enter password!”, Toast.LENGTH_SHORT).show();
return;
}
if (password.length() < 6) {
Toast.makeText(getApplicationContext(), “Password too short, enter minimum 6 characters!”, Toast.LENGTH_SHORT).show();
return;
}
progressBar.setVisibility(View.VISIBLE);
//create user
mAuth.createUserWithEmailAndPassword(email, password)
.addOnCompleteListener(SignupActivity.this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
Toast.makeText(SignupActivity.this, “createUserWithEmail:onComplete:” + task.isSuccessful(), Toast.LENGTH_SHORT).show();
progressBar.setVisibility(View.GONE);
// If sign in fails, display a message to the user. If sign in succeeds
// the auth state listener will be notified and logic to handle the
// signed in user can be handled in the listener.
if (!task.isSuccessful()) {
Toast.makeText(SignupActivity.this, “Authentication failed.” + task.getException(),
Toast.LENGTH_SHORT).show();
} else {
startActivity(new Intent(SignupActivity.this, LoginActivity.class));
finish();
}
}
});
}
});
_loginLink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Finish the registration screen and return to the Login activity
finish();
}
});
}
// public void signup() {
// Log.d(TAG, “Signup”);
//
// if (!validate()) {
// onSignupFailed();
// return;
// }
//
// _signupButton.setEnabled(false);
//
// final ProgressDialog progressDialog = new ProgressDialog(SignupActivity.this,
// R.style.Theme_AppCompat_Light); //edit le
// progressDialog.setIndeterminate(true);
// progressDialog.setMessage(“Creating Account…”);
// progressDialog.show();
//
// String name = _nameText.getText().toString();
// String email = _emailText.getText().toString();
// String password = _passwordText.getText().toString();
//
// // TODO: Implement your own signup logic here.
//
// new android.os.Handler().postDelayed(
// new Runnable() {
// public void run() {
// // On complete call either onSignupSuccess or onSignupFailed
// // depending on success
// onSignupSuccess();
// // onSignupFailed();
// progressDialog.dismiss();
// }
// }, 3000);
// }
// public void onSignupSuccess() {
// _signupButton.setEnabled(true);
// setResult(RESULT_OK, null);
// finish();
// }
//
// public void onSignupFailed() {
// Toast.makeText(getBaseContext(), “Signup failed”, Toast.LENGTH_LONG).show();
//
// _signupButton.setEnabled(true);
// }
//
// public boolean validate() {
// boolean valid = true;
//
// String name = _nameText.getText().toString();
// String email = _emailText.getText().toString();
// String password = _passwordText.getText().toString();
//
// if (name.isEmpty() || name.length() < 3) {
// _nameText.setError(“at least 3 characters”);
// valid = false;
// } else {
// _nameText.setError(null);
// }
//
// if (email.isEmpty() || !android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches()) {
// _emailText.setError(“enter a valid email address”);
// valid = false;
// } else {
// _emailText.setError(null);
// }
//
// if (password.isEmpty() || password.length() < 4 || password.length() > 10) {
// _passwordText.setError(“between 4 and 10 alphanumeric characters”);
// valid = false;
// } else {
// _passwordText.setError(null);
// }
//
// return valid;
// }
}