Firebase is not storing facebook user data in Authentication

Viewed 53

I have integrated Facebook login in my android app. I can successfully login with facebook but firebase is not storing any of my facebook data i.e email address and also no user is generated in firebase Authentication. Please help me how can I accomplish this. Below is my code

Layout

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#1D2127"
    tools:context=".LoginActivity">
 <Button
        android:id="@+id/btnfacebook"
        android:layout_width="300dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:backgroundTint="#1DBF73"
        android:fontFamily="@font/montserrat"
        android:text="Continue With Facebook"
        app:cornerRadius="20dp"
        app:layout_constraintEnd_toEndOf="@+id/btnJoinNow"
        app:layout_constraintStart_toStartOf="@+id/btnJoinNow"
        app:layout_constraintTop_toBottomOf="@+id/btnJoinNow" />

MainActivity

public class MainActivity extends AppCompatActivity {

    Button facebook;
    CallbackManager callbackManager;

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

      
        facebook = findViewById(R.id.btnfacebook);
callbackManager = CallbackManager.Factory.create();
LoginManager.getInstance().registerCallback(callbackManager,
                new FacebookCallback<LoginResult>() {
                    @Override
                    public void onSuccess(LoginResult loginResult) {
                        Intent intent = new Intent(MainActivity.this, SetupProfileActivity.class);
                        startActivity(intent);
                        finish();
                    }

                    @Override
                    public void onCancel() {
                        // App code
                    }

                    @Override
                    public void onError(FacebookException exception) {
                        // App code
                    }
                });
facebook.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {


                LoginManager.getInstance().logInWithReadPermissions(MainActivity.this, Arrays.asList("email"));


            }
        });
 }


    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        callbackManager.onActivityResult(requestCode, resultCode, data);
        super.onActivityResult(requestCode, resultCode, data);

Thanks for Answring

0 Answers
Related