如果已经登录,如何跳过登录-用Google登录-Android

时间:2020-03-06 20:50:24

标签: android google-login

如果我已经登录,我想跳过登录活动。主要想法是,第一次打开应用程序时,我必须查看登录活动,因为我尚未登录,但是如果我登录并关闭应用程序后,再次打开应用程序后,我想查看菜单,而不是日志记录活动。

我试图上网查看,但我不太了解。 我是android的新手,所以我会尽量了解。下面我将让我的代码。顺便说一句,这是行不通的,而且我不明白自己在做什么错。预先谢谢你。

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

    signInButton = findViewById(R.id.sign_in_button);

    name =findViewById(R.id.name);

    mFusedLocationClient = LocationServices.getFusedLocationProviderClient(this);

    auth = FirebaseAuth.getInstance();

    gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestEmail()
            .build();

    if(mGoogleSignInClient == null ){
        mGoogleSignInClient = GoogleSignIn.getClient(this, gso);

        signInButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                switch (v.getId()) {
                    case R.id.sign_in_button:
                        signIn();
                        break;
                }
            }
        });
    }else{
        Intent intent = new Intent(MainActivity.this,Menu.class);
        startActivity(intent);
    }


    fetchLocation();
    statusCheck();

}

1 个答案:

答案 0 :(得分:1)

每次打开应用程序时都使用此

GoogleSignInAccount account = new GoogleSignIn.getLastSignedInAccount(activity);

如果上次登录的会话不为空,则可以获取该会话。

if(account!=null && !account.isExpired())
   String email =account.email.toString();

我是从Kotlin翻译过来的,在声明上可能会有一点变化。