Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.lewis.thinktankv10;
- 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.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 com.google.firebase.auth.FirebaseUser;
- public class Login extends AppCompatActivity {
- protected FirebaseAuth mAuth;
- protected FirebaseAuth.AuthStateListener mAuthListener;
- protected final static String TAG = "LoginActivity";
- private EditText etEmail;
- private EditText etPass;
- private Button bLogin;
- private Button bRegister;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_login);
- etEmail = (EditText)findViewById(R.id.editText_Email);
- etPass = (EditText)findViewById(R.id.editText_Password);
- bLogin = (Button)findViewById(R.id.Login_Button);
- bRegister = (Button)findViewById(R.id.Register_Button);
- bRegister.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Intent intent = new Intent(Login.this, Register.class);
- startActivity(intent);
- }
- });
- bLogin.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- login(etEmail.getText().toString(), etPass.getText().toString());
- }
- });
- mAuth = FirebaseAuth.getInstance();
- mAuthListener = new FirebaseAuth.AuthStateListener() {
- @Override
- public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
- FirebaseUser user = firebaseAuth.getCurrentUser();
- if (user!=null) {
- Log.d(TAG, "onAuthStateChanged:successful_login: " + user.getUid());
- }
- else {
- Log.d(TAG, "onAuthStateChanged:successful_logout");
- }
- }
- };
- }
- @Override
- public void onStart() {
- super.onStart();
- mAuth.addAuthStateListener(mAuthListener);
- }
- @Override
- public void onStop() {
- super.onStop();
- if (mAuthListener != null) {
- mAuth.removeAuthStateListener(mAuthListener);
- }
- }
- private void login(String email, String pass) {
- Log.d(TAG, "user signed in: " + email);
- if (validateLoginForm() == false) {
- return;
- }
- mAuth.signInWithEmailAndPassword(email, pass).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- Log.d(TAG, "successful login: " + task.isSuccessful());
- if(task.isSuccessful() == false) {
- Log.w(TAG, "login unsuccessful: " + task.getException());
- Toast.makeText(Login.this, "Email or password was not recognised", Toast.LENGTH_SHORT).show();
- return;
- }
- Intent intent = new Intent(Login.this, MainMenu.class);
- startActivity(intent);
- }
- });
- }
- private boolean validateLoginForm() {
- boolean valid = true;
- String email = etEmail.getText().toString();
- if (TextUtils.isEmpty(email)) {
- etEmail.setError("Required");
- valid = false;
- } else {
- etEmail.setError(null);
- }
- String password = etPass.getText().toString();
- if (TextUtils.isEmpty(password)) {
- etPass.setError("Required");
- valid = false;
- } else {
- etPass.setError(null);
- }
- return valid;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement