2017-04-10 69 views
1

Ich implementiere einen Facebook Login mit Facebook SDK auf Android.Android facebook login immer nach benutzer fragen nach ausloggen

compile 'com.facebook.android:facebook-android-sdk:4.+' 

Ich bin der Anmeldung mit dem Benutzer als

 callbackManager = CallbackManager.Factory.create(); 
     loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() { 
     .. 
     } 

Und für Abmelde ich meine eigene ausloggen Taste und programmatisch den Benutzer abmelden:

 LoginManager.getInstance().logOut(); 

Meine Frage ist:

Nach dem Ausloggen, wenn ich auf "weiter mit f klicken acebook "die vorherigen Benutzerinformationen Pop-up bis" Weiter als XY ". Ich will das nicht. Ich möchte immer wieder nach E-Mail, Passwort fragen, wenn sich jemand nach dem Abmelden anmelden möchte. Wie kann ich das machen?

Antwort

0

Eigentlich habe ich die Lösung gefunden. Ich änderte das Anmeldeverhalten für die FB Login-Button, für diese i verwendet:

loginButton.setLoginBehavior(LoginBehavior.WEB_ONLY); 

Also jedes Mal, es für die Anmeldung, um die Web-Ansicht erscheint.

0

Ich möchte um E-Mail, Passwort jedes Mal erneut fragen, ob jemand nach Abmeldung einloggen möchte.

versuchen Sie dies in Ihrem onCreate()

FacebookSdk.sdkInitialize(getApplicationContext()); 
callbackManager = CallbackManager.Factory.create(); 
updateWithToken(AccessToken.getCurrentAccessToken()); //add this method 

Jetzt in updateWithToken() Methode logout der Benutzer aus früheren Sitzung

private void updateWithToken(AccessToken currentAccessToken) { 

    if (currentAccessToken != null) { 
     LoginManager.getInstance().logOut(); 
    } else { 
    } 
} 

EDIT

wenn Sie wollen, vollständig trennen Benutzer von Facebook Login Verwendung:

public void disconnectFromFacebook() { 

    if (AccessToken.getCurrentAccessToken() == null) { 
     return; // already logged out 
    } 

    new GraphRequest(AccessToken.getCurrentAccessToken(), "/me/permissions/", null, HttpMethod.DELETE, new GraphRequest 
      .Callback() { 
     @Override 
     public void onCompleted(GraphResponse graphResponse) { 

      LoginManager.getInstance().logOut(); 

     } 
    }).executeAsync(); 
} 
+0

Es hat nicht funktioniert. Ich bekomme immer noch "Weiter als XY". Es könnte sein, dass wenn ich auf den LoginButton klicke, er mich bei der Native Facebook App anmeldet. Aber wenn ich auf LogOut klicke, meldet mich das nicht von der nativen Facebook App ab. –

+0

@ BalázsLombosi ..i habe die Antwort bearbeitet .. – rafsanahmad007

+0

Ich bin immer noch nicht aus der nativen Facebook App ausgeloggt. Und immer noch den gleichen Benutzer, wenn ich auf "Contine mit Facebook" klicke. –

Verwandte Themen