当前位置: 代码迷 >> Android >> 如果我从Webform登录,Android Facebook LoginButton不会更新登录状态
  详细解决方案

如果我从Webform登录,Android Facebook LoginButton不会更新登录状态

热度:118   发布时间:2023-08-04 10:51:07.0

我有一个允许用户在Facebook上发布的应用程序。 在选项屏幕中,我有一个LoginButton,可以用来登录,它会记住状态。 登录后,它将更改为“注销”。如果我尝试共享但未登录(使用选项屏幕中的按钮),则显示Facebook Web表单,然后我在此处登录。 问题在于选项屏幕中的LoginButton不会更新其状态,例如说“注销”。

谢谢。

在“选项屏幕”中,您应该检查是否已经有像这样的AccessToken

if (AccessToken.getCurrentAccessToken() != null &&
            com.facebook.Profile.getCurrentProfile() != null) {
        imgFacebook.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                LoginManager.getInstance().logOut();
                imgFacebook.setVisibility(View.GONE);
                imgFacebookDeactive.setVisibility(View.VISIBLE);
                Toast.makeText(getApplicationContext(), "Facebook has Logout successfulley!",
                        Toast.LENGTH_SHORT).show();
            }
        });


    } else {
        imgFacebook.setVisibility(View.GONE);
        imgFacebookDeactive.setVisibility(View.VISIBLE);
        imgFacebookDeactive.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(getApplication(), "Facebook already Logout", Toast.LENGTH_SHORT).show();
            }
        });
    }

然后,我检查我的CurrentAccessToken和CurrentProfile,如果它不为null,则意味着已经登录了一个帐户。我调用LoginManager.getInstance().logOut(); 注销Facebook。

  相关解决方案