-1

I am trying to create a Firebase Authentication application in Android Studio 3.1.4 using Email and Password, but when I click on register button, it crashes the Application with following summary. Error when the app crashes.

MainActivity.java

package com.example.vatsal2416.firebaseauth;

import android.app.Activity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.View;
import android.widget.Button;
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 MainActivity extends Activity {
    private FirebaseAuth mAuth;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        final TextView textEmail = findViewById(R.id.et1);
        final TextView textPassword= findViewById(R.id.et2);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Initialize buttons
        Button btn_Login = findViewById(R.id.login);
        Button btn_regsiter = findViewById(R.id.register);

        //intialize Firebase Authentication
        mAuth = FirebaseAuth.getInstance();

        btn_Login.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                methodLogin(textEmail.getText().toString(),textPassword.getText().toString());
            }
        });


        btn_regsiter.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                methodRegister(textEmail.getText().toString(),textPassword.getText().toString());
            }
        });
    }

    public void methodRegister(String email, String password){
        mAuth.createUserWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        if (task.isSuccessful()) {
                            Toast.makeText(getApplicationContext(), "Authentication Successful", Toast.LENGTH_SHORT).show();

                        }else{
                            Toast.makeText(getApplicationContext(), "Authentication Successful", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
    }

    public void methodLogin(String email, String password){
        mAuth.signInWithEmailAndPassword(email, password)
                .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {
                        if (task.isSuccessful()) {
                            Toast.makeText(getApplicationContext(), "Authentication Successful", Toast.LENGTH_SHORT).show();
                        }else{
                            Toast.makeText(getApplicationContext(), "Authentication Successful", Toast.LENGTH_SHORT).show();
                        }
                    }
                });
    }
}

Github link of project

https://github.com/vatsal2416/loginExample

Can anyone tell me what is actually wrong in the code.

Phantômaxx
  • 37,901
  • 21
  • 84
  • 115
Vatsal Chavda
  • 129
  • 2
  • 8

1 Answers1

1

Use

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    final TextView textEmail = findViewById(R.id.et1);
    final TextView textPassword= findViewById(R.id.et2);

Instead of

    final TextView textEmail = findViewById(R.id.et1);
    final TextView textPassword= findViewById(R.id.et2);
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
Viswanath Kumar Sandu
  • 2,230
  • 2
  • 17
  • 34