J'essaie de me déconnecter de Facebook par programme sans utiliser FBSDKLoginButton
j'ai eu une recherche comment pourrais-je faire j'ai trouvé cette réponse Peut-on se déconnecter facebook par programme mais le problème est le FBSession
est déconseillé dans la nouvelle version iOS FBSDK
ma question est-il possible d'effacer la session fb dans la nouvelle version iOS FBSDK? s'il existe un moyen de se déconnecter de Facebook par programme? ou comment puis-je appeler l'action de déconnexion à partir de FBSDKLoginButton
Merci d'avance :)
Vous avez deux méthodes pour vous déconnecter. Tout d'abord, comme suggéré par Inder Kumar Rathore
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logOut];
La seconde consiste à définir le currentAccessToken sur nil
[FBSDKAccessToken setCurrentAccessToken:nil];
@cookiemonsta espérons que la deuxième méthode fonctionne pour vous.
FBSDKLoginManager
est votre besoin, il a la méthode logOut
mais vous devrez peut-être utiliser votre connexion personnalisée
par exemple.
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithReadPermissions:@[@"email"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if (error) {
// Process error
} else if (result.isCancelled) {
// Handle cancellations
} else {
// If you ask for multiple permissions at once, you
// should check if specific permissions missing
if ([result.grantedPermissions containsObject:@"email"]) {
// Do work
}
}
}];
//then logout
[loginManager logOut];
Version Swift:
FBSDKLoginManager().logOut()
Vous pouvez utiliser FBSDKLoginManager
même si vous vous êtes connecté avec FBSDKLoginButton
.
Pour Swift 3 et 4
Je voudrais utiliser le code mentionné ici, Comment déconnecter l'utilisateur en utilisant l'authentification Facebook en utilisant Swift et iOS?
où HardikDG a mentionné une bonne réponse pour la déconnexion. ce que vous devez faire est d'ajouter la ligne ci-dessous avant la connexion,
fbLoginManager.loginBehavior = FBSDKLoginBehavior.web
et pendant la déconnexion, utilisez le code ci-dessous
FBSDKAccessToken.setCurrent(nil)
FBSDKProfile.setCurrent(nil)
FBSDKLoginManager().logOut()
cela fonctionne parfaitement pour moi.
Swift 3 et Swift 4:
import FacebookLogin
import FacebookCore
let loginManager = LoginManager()
loginManager.logOut()