1

我们正在更新应用程序以使用新的 Facebook iOS SDK (4.0.1),以支持从 2015 年 5 月 1 日起强制进行的登录更改。

我们调用登录屏幕并将登录行为设置为FBSDKLoginBehaviorNative,使用以下命令:

[self.loginManager logInWithReadPermissions:@[@"email"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
        if (error) {
            completion(nil, error);
        }
        else if (result.isCancelled) {
            completion(nil, nil);
        }
        else {
            completion(result.token.tokenString, nil);
        }
    }];

我们得到了一个奇怪的结果。在设备上安装 Facebook iOS 应用程序并作为我们的 Facebook 应用程序测试用户之一登录后,我们会看到旧的登录屏幕(无法拒绝特定权限,并要求friend_list已弃用的权限):

在此处输入图像描述

如果没有安装 Facebook iOS 应用,我们会得到预期的新登录屏幕:

在此处输入图像描述

是什么赋予了?

设备详情:iPhone 4S、iOS 8.1、FB app v28.0(2015 年 4 月 13 日)。

4

1 回答 1

1

我们已经确认这是 iOS 版 Facebook SDK 4.0 版中引入的意外回归,我们有一个修复程序,将在 SDK 的下一次更新中发布。一旦修复,用户将看到相同版本的登录对话框,无论他们是在 Safari 中还是在 Facebook 应用程序中查看它。

请注意,一旦应用程序迁移到使用 Graph API 的 2.0 版(4 月 30 日之后),无论是否对 SDK 进行了修复,用户都应该看到新版本的登录对话框,因此这种差异应该只是短时间的问题。(如果您在这种情况下继续看到异常行为,请报告。)

对困惑感到抱歉!

于 2015-04-21T00:08:27.187 回答