У меня проблемы с FirebaseUI. Проблема в том, что при запуске запускается вход по электронной почте, не нажимая ни на что. Я хочу, чтобы он отображал различные параметры входа, но он продолжает запускать вход по электронной почте. Я хочу, чтобы это показывало это:
image
Но вместо этого он переходит непосредственно в поток входа в электронную почту всякий раз, когда приложение запускается и ничего не нажимает. Я никогда не получаю возможность выбрать Facebook или Google
image
Это мой LoginActivty
public class LoginActivity extends AppCompatActivity {
private static final int MY_REQUEST_CODE = 7117;
private FirebaseAuth mAuth;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mAuth = FirebaseAuth.getInstance();
setContentView(R.layout.activity_login);
showSignInOptions();
}
@Override
protected void onStart() {
super.onStart();
FirebaseUser currentUser = mAuth.getCurrentUser();
if (currentUser != null) {
startActivity(new Intent(LoginActivity.this, MainActivity.class));
}
else {
Toast.makeText(this, "", Toast.LENGTH_SHORT).show();
}
}
public void showSignInOptions() {
AuthMethodPickerLayout loginLayout = new AuthMethodPickerLayout
.Builder(R.layout.activity_login)
.setEmailButtonId(R.id.email_button)
.setFacebookButtonId(R.id.facebook_button)
.setGoogleButtonId(R.id.google_button)
.build();
startActivityForResult(
AuthUI.getInstance().createSignInIntentBuilder()
.setTheme(R.style.AppTheme)
.setAuthMethodPickerLayout(loginLayout)
.build(), MY_REQUEST_CODE
);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == MY_REQUEST_CODE) {
IdpResponse response = IdpResponse.fromResultIntent(data);
if (resultCode == RESULT_OK) {
startActivity(new Intent(LoginActivity.this, MainActivity.class));
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
Toast.makeText(this, "Welcome " + user.getDisplayName(), Toast.LENGTH_SHORT).show();
}
else {
Toast.makeText(this, "" + response.getError().getMessage(), Toast.LENGTH_SHORT).show();
}
}
}
Я не вижу нигде в моем код, который говорит, что это должно запустить поток электронной почты. Пожалуйста, помогите мне. Заранее спасибо