FBSDKLoginBehaviorSystemAccount无法正常工作

4

我正在我的Objective-C项目中使用Facebook SDK 4.3.0。在那里,我需要使用在设置中配置的Facebook帐户进行登录。

为此,我正在使用以下代码:

FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
login.loginBehavior = FBSDKLoginBehaviorSystemAccount;
[login logInWithReadPermissions:@[@"public_profile", @"email", @"user_friends"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
    if (error || result.isCancelled){
        if (result.isCancelled) {
            NSLog(@"is canceled");
        } else {
            NSLog(@"is not canceled");
        }

        NSLog(@"facebook login error:%ld %@",(long)error.code,[error localizedDescription]);
        [self showErrorWithMessage:@"Couldn't login with Facebook"];
        return;
    }
    FBSDKAccessToken *token = [FBSDKAccessToken currentAccessToken];
    NSLog(@"facebook access token data: %@",token.tokenString);
    [[ApiClient shared] requestAccessToAccountWithFacebookTokenString:token.tokenString];
}];

在iPad中设置了Facebook帐户后,我运行它,但是登录失败,并出现错误描述“该设备上未配置Facebook帐户”,错误代码为307(根据FBSDKLoginConstants.h的说法,它是FBSDKLoginSystemAccountUnavailableErrorCode)。
我在两个iPad上都尝试过,两者都有同样的问题。 如果我使用FBSDKLoginBehaviorNative,它可以正常工作(这意味着它忽略设置并使用本地应用程序)。 如何使FBLoginView默认使用系统帐户提出了相同的问题,但唯一的答案是使用loginBehaviour,而我已经在使用它了。(我没有足够的声望在评论中提问)。

我也遇到了这个问题,你找到解决方案了吗? - Amit
还没有。我目前正在使用FBSDKLoginBehaviorNative,直到我找到一个解决方法或Facebook发布新的SDK版本。 - kaoru
1
现在已经是十月中旬了,我仍然在使用最新的SDK时遇到同样的问题。有什么解决方案吗? - Can Poyrazoğlu
1个回答

3

你刚刚提到了GitHub上的一部分代码,但我们应该在那里写什么?能否请您提供更多信息? - kokemomuke

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接