gpt4 book ai didi

ios - 如何从 fbsession 注销?

转载 作者:行者123 更新时间:2023-11-29 03:35:41 24 4
gpt4 key购买 nike

H,在我的应用程序中,用户可以使用 facebook 登录应用程序。我可以使用 fbsession 成功登录,但我无法从 fbsession 注销。一旦用户登录到应用程序,我就会手动注销fb session 。但我无法从 fbseesion 注销。在我的应用程序中,当我单击登录按钮时,它不会指向登录页面,而是直接显示对话框页面,而对于我来说,我每次都必须在我的应用程序中显示登录页面。这是我的代码

   - (IBAction)facebooklogin:(id)sender
{
[FBSession openActiveSessionWithReadPermissions:@[@"email",@"user_location",@"user_birthday",@"user_hometown"]
allowLoginUI:YES
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {

switch (state) {
case FBSessionStateOpen:
[[FBRequest requestForMe] startWithCompletionHandler:^(FBRequestConnection *connection, NSDictionary<FBGraphUser> *user, NSError *error) {
if (error) {
NSLog(@"error:%@",error);
}
else
{
// retrive user's details at here as shown below
NSLog(@"user :%@",user);

NSDictionary *resultdict=[[[NSDictionary alloc]initWithObjectsAndKeys:user.first_name,@"FirstName",user.last_name,@"LastName",user.last_name,@"LastName",user.birthday,@"Birthday",user.username,@"Username",[user objectForKey:@"email"],@"Email",user.id,@"FBUserId", nil]autorelease];

[[NSUserDefaults standardUserDefaults]setObject:resultdict forKey:@"FBUserDetails"];
NSString *userid=[NSString stringWithFormat:@"%@@social",user.id];
[self performSelector:@selector(checkSocialNetworkingRegisteredOrNot:) withObject:userid afterDelay:0.0f];
}
}];
break;

default:
break;
}
} ];
}

///////////////////////手动退出fbsession///////////

  - (IBAction)logoutmanullayInbackground:(id)sender
{
[FBSession.activeSession closeAndClearTokenInformation];
[[FBSession activeSession] close];
[[FBSession activeSession] closeAndClearTokenInformation];
[FBSession setActiveSession:nil];

最佳答案

您正在注销(您看到按钮再次显示“登录”意味着您已成功注销)。但是,如果您使用 SSO(通过 iOS 集成登录或 Facebook 应用程序),那么当用户再次单击“登录”时,将不会提示他们(因为应用程序或设备上的用户已经授权您的应用程序)。

要解决此问题(因为您说您正在制作餐厅应用程序),您可以卸载 Facebook 应用程序(并从 iOS 中删除登录),或者您可以在打开 session 时使用 FBSessionLoginBehaviorForcingWebView 登录。

参见 https://developers.facebook.com/docs/reference/ios/current/class/FBSession/#openWithBehavior%3AcompletionHandler%3A

关于ios - 如何从 fbsession 注销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19220338/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com