繁体   English   中英

如果已经登录,如何跳过登录 - 使用谷歌登录 - android

[英]How to skip login if already logged in - log in with google - android

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

我试着在网上看,但我不太明白。 我是 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();

}

使用此功能,无论何时打开应用程序

GoogleSignInAccount account = new GoogleSignIn.getLastSignedInAccount(activity);

您可以获取上次登录的会话,如果它不为空即

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM