IOS FACEBOOK SDK,从FB注销,然后登录

IOS FACEBOOK SDK,从FB注销,然后登录,ios,facebook,facebook-login,Ios,Facebook,Facebook Login,我已经读了很多不同的问题,但从来没有找到我要找的。我试图找出以下行为是否正常 这是IOS版的 假设我的应用程序在本主题的其余部分被称为TEST 以下是我想做的: 1) 我进入测试应用程序并使用facebook登录(有史以来第一次) 2) Facebook将打开并要求我批准我想要登录。我赞成 3) 测试应用程序现在有一个facebook令牌 4) 在测试应用程序中,我单击一个按钮注销,删除我的facebook令牌 5) 我在测试应用程序中再次登录 6) 因为我已经在2)中批准我接受使用测试应用程序

我已经读了很多不同的问题,但从来没有找到我要找的。我试图找出以下行为是否正常

这是IOS版的

假设我的应用程序在本主题的其余部分被称为TEST

以下是我想做的:

1) 我进入测试应用程序并使用facebook登录(有史以来第一次)

2) Facebook将打开并要求我批准我想要登录。我赞成

3) 测试应用程序现在有一个facebook令牌

4) 在测试应用程序中,我单击一个按钮注销,删除我的facebook令牌

5) 我在测试应用程序中再次登录

6) 因为我已经在2)中批准我接受使用测试应用程序登录。我希望在3)中直接着陆,但现在我总是在2)中着陆

我认为这可能是默认行为,但我不明白tinder等其他应用程序如何允许您在不显示该步骤的情况下注销和登录

所以我的问题是:

1)上述步骤是否为默认行为?

2)如果没有,我缺少什么。

这是我的代码供参考:

    if([FBSDKAccessToken currentAccessToken] != nil)
        [self loginUser];
    else{
        FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
        login.loginBehavior = FBSDKLoginBehaviorSystemAccount;

        // THIS PART ALWAYS SWAP FROM MY APP TO FACEBOOK APP
        [login logInWithReadPermissions:@[FACEBOOK_EMAIL, FACEBOOK_PUBLICPROFILE] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
                if (error){
                    [login logOut];
                }
                else if ([result isCancelled] == YES){
                    [login logOut];
                }
                else{
                    [self loginUser];
                }
            }];

    }
编辑:

正如shikha kochar所建议的,我已经更新了我的PLIST,但仍然没有工作,附加了一些额外的屏幕截图

PLIST:

应用程序代理摘录:

您的代码中没有错误,请检查您的结果!!确保在infoplist中添加fbauth2

在将附件添加到plist后,我仍然存在此问题。