使用 FBLoginView 自定义注销

Posted

技术标签:

【中文标题】使用 FBLoginView 自定义注销【英文标题】:Customize Logout using FBLoginView 【发布时间】:2014-08-30 10:49:13 【问题描述】:

我正在组装一个 ios 应用程序,并且我正在使用 FBLoginView,如此处所述。 http://www.appcoda.com/ios-programming-facebook-login-sdk/

我现在有一个显示登录按钮的工作应用程序,注销后它变成一个注销按钮。显然,这不是注销按钮的实际实现。登录时,我正在转到选项卡栏控制器,并且我有一个更多选项卡,我想在该选项卡上显示许多其他选项和一个注销选项(就像 Facebook iOS 应用程序一样)。

我的问题是 - 我可以挂钩一个注销菜单选项来触发由 FBLoginViewDelegate 处理的注销并返回登录视图,还是我必须使用 FBSession 类手动实现登录和注销?

【问题讨论】:

您最终使用的是自定义 Facebook UI 流程还是 FBLoginView?我也有同样的问题。 【参考方案1】:

您应该使用自己的 UI 进行登录和注销,忘记 FBLoginView 并创建您自己的登录按钮的操作并将代码放在下面:

     [FBSession openActiveSessionWithReadPermissions:@[@"email"]
                                          allowLoginUI:YES
                                     completionHandler:
        ^(FBSession *session, FBSessionState state, NSError *error) 

            if (error) 

                 // error

             else 

                // user logged in
             
         ];

    

要注销,您只需要清除 fb 会话和访问令牌。

【讨论】:

以上是关于使用 FBLoginView 自定义注销的主要内容,如果未能解决你的问题,请参考以下文章

Facebook FBLoginView 自定义 loginView 按钮互联网问题

使用自定义 ActionFilterAttribute 在 MVC 5 中注销用户

FBLoginView 拒绝某些用户

如何自定义 Grails Spring Security Core 2 登录/注销控制器和视图?

iphone app中的FBLoginView不提示输入邮箱和密码

在 ios 应用程序中自定义登录到 facebook