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