Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 用户使用Firebase实时数据库登录_Android_Firebase_Firebase Realtime Database - Fatal编程技术网

Android 用户使用Firebase实时数据库登录

Android 用户使用Firebase实时数据库登录,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我正在使用firebase实时数据库使用一个简单的登录应用程序。我希望用户只登录一次。所以,下一次若用户以前登录过,那个么用户应该被引导到主屏幕,而不是登录页面。任何帮助都将不胜感激 FirebaseAuth.getInstance().getCurrentUser().getProviderId() 如果用户没有使用firebase登录,则应返回“firebase” 或者更好 FirebaseUser currentUser = mAuth.getCurrentUser(); 检查是否为空

我正在使用
firebase实时数据库
使用一个简单的登录应用程序。我希望用户只登录一次。所以,下一次若用户以前登录过,那个么用户应该被引导到主屏幕,而不是登录页面。任何帮助都将不胜感激

FirebaseAuth.getInstance().getCurrentUser().getProviderId()
如果用户没有使用firebase登录,则应返回“firebase”

或者更好

FirebaseUser currentUser = mAuth.getCurrentUser();
检查是否为空

如果用户没有使用firebase登录,则应返回“firebase”

或者更好

FirebaseUser currentUser = mAuth.getCurrentUser();

检查或为空

假设您的
main活动
是您的启动器活动(用户在未登录时将登陆,即登录活动),而
ActivityHome
是您希望用户在登录时重定向的主活动

public class MainActivity extends AppCompatActivity {

    private FirebaseAuth mAuth;
    private FirebaseAuth.AuthStateListener mAuthListener;


    @Override
    protected void onStart() {
        super.onStart();
        mAuth.addAuthStateListener(mAuthListener);
    }

    @Override
    protected void onStop() {
        super.onStop();
        mAuth.removeAuthStateListener(mAuthListener);
    }

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

        mAuth = FirebaseAuth.getInstance();
        mAuthListener = new FirebaseAuth.AuthStateListener() {
            @Override
            public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                if (firebaseAuth.getCurrentUser()!=null){
                    // user is logged in, redirect to ActivityHome
                    startActivity(new Intent(MainActivity.this, ActivityHome.class));
                }
            }
        };  
    }
}

现在,如果用户已登录,他/她将被重定向到ActivityHome,但如果他未登录,他将停留在MainActivity(登录活动)上

假设您的
main活动
是您的启动器活动(用户未登录时将登陆,即登录活动),而
ActivityHome
是您希望用户登录时重定向的主活动

public class MainActivity extends AppCompatActivity {

    private FirebaseAuth mAuth;
    private FirebaseAuth.AuthStateListener mAuthListener;


    @Override
    protected void onStart() {
        super.onStart();
        mAuth.addAuthStateListener(mAuthListener);
    }

    @Override
    protected void onStop() {
        super.onStop();
        mAuth.removeAuthStateListener(mAuthListener);
    }

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

        mAuth = FirebaseAuth.getInstance();
        mAuthListener = new FirebaseAuth.AuthStateListener() {
            @Override
            public void onAuthStateChanged(@NonNull FirebaseAuth firebaseAuth) {
                if (firebaseAuth.getCurrentUser()!=null){
                    // user is logged in, redirect to ActivityHome
                    startActivity(new Intent(MainActivity.this, ActivityHome.class));
                }
            }
        };  
    }
}

现在,如果用户已登录,他/她将被重定向到ActivityHome,但如果他未登录,他将停留在MainActivity(登录活动)上

假设我在一个活动上登录Google和Facebook,那么它将如何工作?假设我在一个活动上登录Google和Facebook,那么它将如何工作?假设我在一个活动上登录Google和Facebook,那么它将如何工作?假设我在一个活动上登录Google和Facebook在单个活动中,它将如何工作。。?