Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.mahers.railnaksha;
- import android.content.Intent;
- import android.support.annotation.NonNull;
- import android.support.v7.app.AppCompatActivity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.view.WindowManager;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.ProgressBar;
- import android.widget.Toast;
- import com.google.android.gms.tasks.OnCompleteListener;
- import com.google.android.gms.tasks.OnFailureListener;
- 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;
- import static android.text.TextUtils.isEmpty;
- public class MainActivity extends AppCompatActivity {
- Button signin,Signup;
- EditText etemailid,password;
- private ProgressBar mProgressBar;
- final String TAG ="MainActivity";
- private FirebaseAuth.AuthStateListener mAuthListener;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate( savedInstanceState );
- setContentView( R.layout.activity_main );
- signin=(Button)findViewById( R.id.signin );
- Signup=(Button)findViewById( R.id.Signup );
- etemailid=(EditText)findViewById( R.id.etemailid );
- password=(EditText)findViewById( R.id.password );
- mProgressBar=(ProgressBar) findViewById( R.id.progressBar );
- initProgressBar();
- setupFirebaseAuth();
- signin.setOnClickListener( new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- if (!isEmpty( etemailid.getText().toString() )
- && !isEmpty( password.getText().toString() )) {
- Log.d( TAG, "onClick: attempting to authenticate." );
- showProgressBar();
- FirebaseAuth.getInstance().signInWithEmailAndPassword( etemailid.getText().toString(),
- password.getText().toString() )
- .addOnCompleteListener( new OnCompleteListener<AuthResult>() {
- @Override
- public void onComplete(@NonNull Task<AuthResult> task) {
- hideProgressBar();
- }
- } ).addOnFailureListener( new OnFailureListener() {
- @Override
- public void onFailure(@NonNull Exception e) {
- Toast.makeText( MainActivity.this, "Authentication Failed", Toast.LENGTH_SHORT ).show();
- hideProgressBar();
- }
- } );
- } else {
- Toast.makeText( MainActivity.this, "You didn't fill in all the fields.", Toast.LENGTH_SHORT ).show();
- }
- }
- } );
- Signup.setOnClickListener( new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- Intent i= new Intent( MainActivity.this,Register.class );
- startActivity( i );
- }
- } );
- }
- private void showProgressBar(){
- mProgressBar.setVisibility(View.VISIBLE);
- }
- private void hideProgressBar(){
- if(mProgressBar.getVisibility() == View.VISIBLE){
- mProgressBar.setVisibility(View.INVISIBLE);
- }
- }
- private void initProgressBar(){
- mProgressBar = (ProgressBar) findViewById(R.id.progressBar);
- mProgressBar.setVisibility(View.INVISIBLE);
- }
- private void hideSoftKeyboard(){
- this.getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
- }
- public void setupFirebaseAuth(){
- Log.d(TAG, "setupFirebaseAuth: started");
- mAuthListener = new FirebaseAuth.AuthStateListener() {
- @Override
- public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
- FirebaseUser user = firebaseAuth.getCurrentUser();
- if (user != null) {
- //check if email is verified
- if(user!=null){
- Log.d(TAG, "onAuthStateChanged: signed_in: " + user.getUid());
- Toast.makeText(MainActivity.this, "Authenticated with: " + user.getEmail(), Toast.LENGTH_SHORT).show();
- Intent intent = new Intent(MainActivity.this,MapsActivity.class);
- intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
- startActivity(intent);
- finish();
- }else{
- Toast.makeText(MainActivity.this, "Email is not Verified\nCheck your Inbox", Toast.LENGTH_SHORT).show();
- FirebaseAuth.getInstance().signOut();
- }
- } else {
- // User is signed out
- Log.d(TAG, "onAuthStateChanged: signed_out");
- }
- // ...
- }
- };
- }
- @Override
- public void onStart() {
- super.onStart();
- FirebaseAuth.getInstance().addAuthStateListener(mAuthListener);
- }
- @Override
- public void onStop() {
- super.onStop();
- if (mAuthListener != null) {
- FirebaseAuth.getInstance().removeAuthStateListener(mAuthListener);
- }
- }
- }
Add Comment
Please, Sign In to add comment