如何在tvOS中获取Facebook用户详细信息

时间:2016-02-05 05:51:55

标签: facebook-login facebook-sdk-4.0 tvos apple-tv

我在 tvOS 中使用Facebook SDK进行登录。目前我使用了以下代码。

FBSDKDeviceLoginButton *button = [[FBSDKDeviceLoginButton alloc] initWithFrame:CGRectZero];
button.readPermissions = @[@"email"];
button.center = self.view.center;
[self.view addSubview:button];

首先对我可以使用readPermissions = @[@"email"];publishPermissions = @[@"publish_actions"];的操作感到困惑 然后如何从Facebook回复中获取 firstName,lastName,email,出生日期 Id 等用户详细信息

2 个答案:

答案 0 :(得分:0)

一旦您拥有有效的令牌,就可以通过连接到我们的Graph API来获取用户的详细信息。例如,成功登录后获取名字和姓氏:

if ([FBSDKAccessToken currentAccessToken]) {
   [[[FBSDKGraphRequest alloc] initWithGraphPath:@"me?fields=first_name,last_name" parameters:nil]
    startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
      if (!error) {
         NSLog(@"fetched user:%@", result);
      }
  }];
}

答案 1 :(得分:0)

它与mobile-sdk不同你应该尝试使用图形api,就像@chrispan建议我尝试过这样的& amp;它工作得很好。只需在参数中添加所需的字段,即可获得用户设置为公开的所有数据。

        FBSDKGraphRequest.init(graphPath: "me", parameters: ["fields" : "email, gender, name, birthday"]).startWithCompletionHandler({ (
            FBSDKGraphRequestConnection connection, id result, let error: NSError? ) -> Void in

            if(error == nil)
            {
                print("fetched user: %@", result)

            }

        })

现在,您的许可问题。当用户在该特定点注册(第一次)时,您要求"阅读权限"和"发布权限"当您想要将某些内容发布到他/她的时间线时使用。