问题描述
我有一个允许用户在Facebook上发布的应用程序。 在选项屏幕中,我有一个LoginButton,可以用来登录,它会记住状态。 登录后,它将更改为“注销”。如果我尝试共享但未登录(使用选项屏幕中的按钮),则显示Facebook Web表单,然后我在此处登录。 问题在于选项屏幕中的LoginButton不会更新其状态,例如说“注销”。
谢谢。
1楼
在“选项屏幕”中,您应该检查是否已经有像这样的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。