【问题标题】:FireBase Auth Error With IntentFireBase 身份验证错误与意图
【发布时间】:2018-07-18 06:14:35
【问题描述】:

这是我的登录活动,当我单击登录按钮时,它不会启动 MainActivity,但是当我关闭并重新打开应用程序时它可以工作,为什么请帮忙

公共类 Auth1Activity 扩展 AppCompatActivity {

String string_1;
String string_2;

private static final Boolean CHECK_EMAIL_VERIFIED = false;
private static final String TAG = "LoginActivity";

private FirebaseAuth firebaseAuth;
private FirebaseAuth.AuthStateListener authStateListener;
private FirebaseUser firebaseUser;

@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_auth_1);
    firebaseAuth = FirebaseAuth.getInstance();

    authStateListener = new FirebaseAuth.AuthStateListener() {

        @Override
        public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {

        }

    };

    firebaseUser = firebaseAuth.getCurrentUser();

    if (firebaseUser != null) {

        Intent intent = new Intent(Auth1Activity.this, MainActivity.class);
        startActivity(intent);
        finish();

    }

    final EditText auth_layout_1_edit_text_1 = findViewById(R.id.auth_layout_1_edit_text_1);
    final EditText auth_layout_1_edit_text_2 = findViewById(R.id.auth_layout_1_edit_text_2);
    Button auth_layout_1_button = findViewById(R.id.auth_layout_1_button);

    auth_layout_1_button.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {

            string_1 = auth_layout_1_edit_text_1.getText().toString();
            string_2 = auth_layout_1_edit_text_2.getText().toString();

            if (string_1.matches("") && string_2.matches("")) {

                auth_layout_1_edit_text_1.setError("Enter Email Address");
                auth_layout_1_edit_text_2.setError("Enter Password");

            } else if (!string_1.matches("") && !string_2.matches("")) {

                firebaseAuth.signInWithEmailAndPassword(string_1, string_2).addOnCompleteListener(Auth1Activity.this, new OnCompleteListener<AuthResult>() {

                    @Override
                    public void onComplete(@NonNull Task<AuthResult> task) {

                        try {

                            if (firebaseUser.isEmailVerified()) {

                                Intent intent = new Intent(Auth1Activity.this, MainActivity.class);
                                startActivity(intent);
                                finish();

                            } else if (!firebaseUser.isEmailVerified()) {

                                Toast.makeText(Auth1Activity.this, "Sign Up Error Please Try Again.", Toast.LENGTH_SHORT).show();

                            }

                        } catch (NullPointerException ignored) {

                        }

                    }

                });

            }

        }

    });

}

@Override
public void onStart() {

    super.onStart();
    firebaseAuth.addAuthStateListener(authStateListener);

}

@Override
public void onStop() {

    super.onStop();

    if (authStateListener != null) {

        firebaseAuth.removeAuthStateListener(authStateListener);

    }

}

}

所以请告诉我这个错误真的很烦我现在帮助!!!如果您想了解更多信息,请告诉

【问题讨论】:

    标签: java android firebase firebase-authentication


    【解决方案1】:

    改变

    void onClickItemFeed(int position, View view);

    void onClickItemFeed(int position, View view,String text);

    并通过在 viewholder 中执行 onClickItemFeed.onClickItemFeed(getAdapterPosition(), view, editText.getText().toString()); 来调用它。

    那么你就有了回调里面的文本。

    【讨论】:

    • 在活动回调中做stringModel = text
    • 还有一个问题,请看我在写你对 Firebase 错误有任何想法吗?
    猜你喜欢
    • 2017-06-18
    • 2017-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 2018-10-25
    相关资源
    最近更新 更多