Простая проверка пользовательского интерфейса Firebase Auth и сбой приложения - PullRequest
0 голосов
/ 22 ноября 2018

Я следую следующему рабочему процессу «как добавить firebase ui auth» в мое приложение, и у меня есть одно основное действие, которое просто меняет текстовое представление, если пользователь вошел в систему или нет.Вот как выглядит код:

public class MainActivity extends AppCompatActivity {

    private static final int RC_SIGN_IN = 123;

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

    }
    public void createSignInIntent() {
        // [START auth_fui_create_intent]
        // Choose authentication providers
        List<AuthUI.IdpConfig> providers = Arrays.asList(
                new AuthUI.IdpConfig.EmailBuilder().build());

        // Create and launch sign-in intent
        startActivityForResult(
                AuthUI.getInstance()
                        .createSignInIntentBuilder()
                        .setAvailableProviders(providers)
                        .build(),
                RC_SIGN_IN);
        // [END auth_fui_create_intent]
    }
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);

        if (requestCode == RC_SIGN_IN) {
            IdpResponse response = IdpResponse.fromResultIntent(data);

            if (resultCode == RESULT_OK) {
                TextView tv = (TextView)findViewById(R.id.tv);
                tv.setText("Signed");
                FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
                // ...
            } else {

                // Sign in failed. If response is null the user canceled the
                // sign-in flow using the back button. Otherwise check
                // response.getError().getErrorCode() and handle the error.
                                    TextView tv = (TextView)findViewById(R.id.tv);
                tv.setText("Not Signed In");
            }
        }
    }
}

Приложение вылетает и Logcat пуст!

1 Ответ

0 голосов
/ 22 ноября 2018

Я видел это, когда библиотеки firebase и firebaseUI несовместимы.

В файле манифеста проверьте, соответствует ли ваш firebaseUI нужному.Это пример для firebaseUI 4.2.1

dependencies {
...
implementation 'com.firebaseui:firebase-ui:4.2.1'
implementation 'com.google.firebase:firebase-core:16.0.5'
implementation 'com.google.firebase:firebase-auth:16.0.5'
implementation 'com.google.firebase:firebase-database:16.0.5'
}

для получения полного списка совместимых библиотек FirebaseUI проверьте эту ссылку Совместимость с Firebase

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...