Advertisement
Guest User

Untitled

a guest
May 12th, 2017
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.20 KB | None | 0 0
  1. package com.example.lewis.thinktankv10;
  2.  
  3. import android.content.Intent;
  4. import android.support.annotation.NonNull;
  5. import android.support.v7.app.AppCompatActivity;
  6. import android.os.Bundle;
  7. import android.text.TextUtils;
  8. import android.util.Log;
  9. import android.view.View;
  10. import android.widget.Button;
  11. import android.widget.EditText;
  12. import android.widget.Toast;
  13.  
  14. import com.google.android.gms.tasks.OnCompleteListener;
  15. import com.google.android.gms.tasks.Task;
  16. import com.google.firebase.auth.AuthResult;
  17. import com.google.firebase.auth.FirebaseAuth;
  18. import com.google.firebase.auth.FirebaseUser;
  19.  
  20. public class Login extends AppCompatActivity {
  21.  
  22.     protected FirebaseAuth mAuth;
  23.     protected FirebaseAuth.AuthStateListener mAuthListener;
  24.     protected final static String TAG = "LoginActivity";
  25.  
  26.     private EditText etEmail;
  27.     private EditText etPass;
  28.     private Button bLogin;
  29.     private Button bRegister;
  30.  
  31.     @Override
  32.     protected void onCreate(Bundle savedInstanceState) {
  33.         super.onCreate(savedInstanceState);
  34.         setContentView(R.layout.activity_login);
  35.  
  36.         etEmail = (EditText)findViewById(R.id.editText_Email);
  37.         etPass = (EditText)findViewById(R.id.editText_Password);
  38.         bLogin = (Button)findViewById(R.id.Login_Button);
  39.         bRegister = (Button)findViewById(R.id.Register_Button);
  40.  
  41.         bRegister.setOnClickListener(new View.OnClickListener() {
  42.             @Override
  43.             public void onClick(View view) {
  44.                 Intent intent = new Intent(Login.this, Register.class);
  45.                 startActivity(intent);
  46.             }
  47.         });
  48.  
  49.         bLogin.setOnClickListener(new View.OnClickListener() {
  50.             @Override
  51.             public void onClick(View view) {
  52.                 login(etEmail.getText().toString(), etPass.getText().toString());
  53.             }
  54.         });
  55.  
  56.         mAuth = FirebaseAuth.getInstance();
  57.  
  58.         mAuthListener = new FirebaseAuth.AuthStateListener() {
  59.             @Override
  60.             public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
  61.                 FirebaseUser user = firebaseAuth.getCurrentUser();
  62.                 if (user!=null) {
  63.                     Log.d(TAG, "onAuthStateChanged:successful_login: " + user.getUid());
  64.                 }
  65.                 else {
  66.                     Log.d(TAG, "onAuthStateChanged:successful_logout");
  67.                 }
  68.             }
  69.         };
  70.     }
  71.  
  72.     @Override
  73.     public void onStart() {
  74.         super.onStart();
  75.         mAuth.addAuthStateListener(mAuthListener);
  76.     }
  77.  
  78.     @Override
  79.     public void onStop() {
  80.         super.onStop();
  81.         if (mAuthListener != null) {
  82.             mAuth.removeAuthStateListener(mAuthListener);
  83.         }
  84.     }
  85.  
  86.     private void login(String email, String pass) {
  87.         Log.d(TAG, "user signed in: " + email);
  88.         if (validateLoginForm() == false) {
  89.             return;
  90.         }
  91.  
  92.         mAuth.signInWithEmailAndPassword(email, pass).addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
  93.             @Override
  94.             public void onComplete(@NonNull Task<AuthResult> task) {
  95.                 Log.d(TAG, "successful login: " + task.isSuccessful());
  96.  
  97.                 if(task.isSuccessful() == false) {
  98.                     Log.w(TAG, "login unsuccessful: " + task.getException());
  99.  
  100.                     Toast.makeText(Login.this, "Email or password was not recognised", Toast.LENGTH_SHORT).show();
  101.                     return;
  102.                 }
  103.                 Intent intent = new Intent(Login.this, MainMenu.class);
  104.                 startActivity(intent);
  105.  
  106.             }
  107.         });
  108.  
  109.  
  110.     }
  111.  
  112.     private boolean validateLoginForm() {
  113.         boolean valid = true;
  114.  
  115.         String email = etEmail.getText().toString();
  116.         if (TextUtils.isEmpty(email)) {
  117.             etEmail.setError("Required");
  118.             valid = false;
  119.         } else {
  120.             etEmail.setError(null);
  121.         }
  122.  
  123.         String password = etPass.getText().toString();
  124.         if (TextUtils.isEmpty(password)) {
  125.             etPass.setError("Required");
  126.             valid = false;
  127.         } else {
  128.             etPass.setError(null);
  129.         }
  130.  
  131.         return valid;
  132.     }
  133.  
  134. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement