次の問題が発生しました。Facebook をアプリケーションに統合するときに、ログイン/ログアウトのキーを実装しました。認証が成功した後、承認を呼び出してボタンのテキストを置き換える必要がありました。ユーザーがすでにログインしている場合、ログアウトするメソッドを呼び出し、ログアウト後にボタンのテキストを変更する必要がありました。途中で、あなたが承認を呼び出すと、進行状況を際限なく回転させ、最終的に何も起こらなかったという事実に出くわしましたが、このFacebookのいたずらを取り除きました. 問題は、ログインとログアウトが正しいことですが、テキストに変更はなく、ログも機能していません。どうしたの?あなたの助けを願っています。
facebookButton = (Button)findViewById(R.id.facebook_button);
facebookButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (facebookProvider.getFacebook().isSessionValid()) {
Log.d("YES", "");
SessionEvents.LogoutListener logoutListener = new SessionEvents.LogoutListener() {
public void onLogoutFinish() {
facebookButton.setText("Login");
Log.d("Logout", "Finish");
}
public void onLogoutBegin() {
Log.d("Logout", "Begin");
//
}
};
SessionEvents.addLogoutListener(logoutListener);
facebookProvider.facebookLogout();
Log.d("Logout", "");
}
else {
Log.d("NO", "");
SessionEvents.AuthListener loginListener = new SessionEvents.AuthListener() {
public void onAuthSucceed() {
facebookButton.setText("Logout");
Log.d("Login", "Succeed");
}
public void onAuthFail(String error) {
Log.d("Login", "Fail");
//
}
};
SessionEvents.addAuthListener(loginListener);
facebookProvider.facebookLogin();
Log.d("Login", "");
}
}
});