0

I used Firebase for the database and authentication. And whenever I click on Login Button or Registration button, the app crashes every time. I think I am not able to connect my app with Firebase that's why this error is showing. Please help someone.

I have added the codes and the error snippet below.

RegistrationActivity.java

    public class RegistrationActivity extends AppCompatActivity {
     Button mregistration;
        EditText memail,mpass,mname;
 FirebaseAuth mauth;
FirebaseAuth.AuthStateListener firebaseAuthStateListener;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_registration);

    firebaseAuthStateListener= firebaseAuth -> {

        FirebaseUser user= FirebaseAuth.getInstance().getCurrentUser();
        //security purpose
        if(user!=null)
        {
            Intent intent=new Intent(getApplication(),MainActivity.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(intent);
            finish();
        }
    };

    mauth=FirebaseAuth.getInstance();

    mregistration=findViewById(R.id.registration);
    mname=findViewById(R.id.name);
    memail=findViewById(R.id.emailid);
    mpass=findViewById(R.id.password);

    mregistration.setOnClickListener(v -> {
        final String name= mname.getText().toString();
        final String email= memail.getText().toString();
        final String pass= mpass.getText().toString();
        mauth.createUserWithEmailAndPassword(email,pass).addOnCompleteListener((Executor) getApplication(), task -> {

            if(!task.isSuccessful())
            {
                Toast.makeText(getApplication(), "Sign in ERROR", Toast.LENGTH_SHORT).show();
            }
            else{
                String userId= Objects.requireNonNull(mauth.getCurrentUser()).getUid();
                DatabaseReference currentUserDb= FirebaseDatabase.getInstance().getReference().child("users").child(userId);

                Map userInfo=new HashMap<>();
                userInfo.put("email",email);
                userInfo.put("name",name);
                userInfo.put("profileImageUrl","default");

                currentUserDb.updateChildren(userInfo);
            }
        });
    });
}

protected void onStart() {
    super.onStart();
    mauth.addAuthStateListener(firebaseAuthStateListener);
}

@Override
protected void onStop() {
    super.onStop();
    mauth.removeAuthStateListener(firebaseAuthStateListener);
}

BUILD GRADLE

    plugins {
id 'com.android.application'}


    android {
compileSdkVersion 30
buildToolsVersion "30.0.3"

defaultConfig {
    applicationId "com.ishita.snapchatfilter"
    minSdkVersion 28
    targetSdkVersion 30
    versionCode 1
    versionName "1.0"

    testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
    }
}
compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
}}




dependencies {
    implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'

implementation 'com.google.firebase:firebase-bom:29.0.3'
implementation 'com.google.firebase:firebase-auth'
implementation 'com.google.firebase:firebase-auth:18.0.0'
implementation 'com.google.firebase:firebase-database:18.0.0'

}

ERROR I GET:

    E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.ishita.snapchatfilter, PID: 29152
    java.lang.RuntimeException: Unable to start activity 
     
   ComponentInfo{com.ishita.snapchatfilter/com.ishita.snapchatfilter.RegistrationActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3797)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3973)
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:246)
        at android.app.ActivityThread.main(ActivityThread.java:8528)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130)
     Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
        at com.ishita.snapchatfilter.RegistrationActivity.onCreate(RegistrationActivity.java:58)
        at android.app.Activity.performCreate(Activity.java:8207)
        at android.app.Activity.performCreate(Activity.java:8191)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3770)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3973) 
        at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) 
        at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
        at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2307) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:246) 
        at android.app.ActivityThread.main(ActivityThread.java:8528) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:602) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1130) 
I/Process: Sending signal. PID: 29152 SIG: 9
Frank van Puffelen
  • 565,676
  • 79
  • 828
  • 807
  • null point in mregistration. Make sure that the resource id is same as the xml file – Muhammad Asad Dec 23 '21 at 14:33
  • corrected it. Still app is crashing – Ishita Amod Dec 23 '21 at 16:14
  • @MuhammadAsad Still app is crashing. 2021-12-23 21:40:18.282 31676-1375/com.ishita.snapchatfilter W/libEGL: EGLNativeWindowType 0x6ffbf26010 disconnect failed 2021-12-23 21:40:28.238 31676-31676/com.ishita.snapchatfilter W/BiChannelGoogleApi: [FirebaseAuth: ] getGoogleApiForMethod() returned Gms: com.google.firebase.auth.api.internal.zzak@dc65f0c 2021-12-23 21:40:28.246 31676-31676/com.ishita.snapchatfilter E/AndroidRuntime: FATAL EXCEPTION: – Ishita Amod Dec 23 '21 at 16:18
  • add full screen shot of error – Muhammad Asad Dec 23 '21 at 18:19

0 Answers0