Facebookのフィールドをクリアできません。画像、名前、性別を示しました。 Facebooklogoutボタンをクリックすると、この3つのフィールドをクリアします。誰もこの上で私を助けることができますか? FBログアウト関数を呼び出し、トークン、現在アクセスしよう:アンドロイドのログアウト後にFacebookのフィールド(画像、名前、性別)をクリアするには
パブリッククラスMainActivityでは、次のコードを使用することができますログアウトするAppCompatActivity {
private LoginButton loginButton;
private CallbackManager callbackManager;
private ProfilePictureView profilePictureView;
private LinearLayout infoLayout;
private TextView email;
private TextView gender;
private TextView username;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/*We have to initialize before using any methods with sdkIntialise()*/
FacebookSdk.sdkInitialize(MainActivity.this);
loginButton = (LoginButton) findViewById(R.id.login_button);
email = (TextView) findViewById(R.id.email);
gender = (TextView) findViewById(R.id.gender);
username = (TextView) findViewById(R.id.vname);
infoLayout = (LinearLayout) findViewById(R.id.layout_info);
infoLayout.setVisibility(View.GONE);
profilePictureView = (ProfilePictureView) findViewById(R.id.vimage);
loginButton.setReadPermissions(Arrays.asList("public_profile, email, user_birthday"));
/*initialize an instance of CallbackManager*/
callbackManager = CallbackManager.Factory.create();
loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
GraphRequest graphRequest = GraphRequest.newMeRequest(loginResult.getAccessToken(), new GraphRequest.GraphJSONObjectCallback() {
@Override
public void onCompleted(JSONObject object, GraphResponse response) {
setProfileView(object);
}
});
Bundle parameters = new Bundle();
parameters.putString("fields", "id,name,email,gender,birthday");
graphRequest.setParameters(parameters);
graphRequest.executeAsync();
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException error) {
Toast.makeText(MainActivity.this, "Error to Login Facebook", Toast.LENGTH_SHORT).show();
}
});
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
callbackManager.onActivityResult(requestCode, resultCode, data);
}
private void setProfileView(JSONObject object) {
try {
email.setText(object.getString("email"));
gender.setText(object.getString("gender"));
username.setText(object.getString("name"));
profilePictureView.setPresetSize(ProfilePictureView.NORMAL);
profilePictureView.setProfileId(object.getString("id"));
infoLayout.setVisibility(View.VISIBLE);
} catch (JSONException e) {
e.printStackTrace();
}
}
}
はちょうどこの答えhttps://stackoverflow.com/questionsをチェックホープ/ 30039232/listen-for-facebook-logout-with-loginbutton-4-1 – RameshJaga