Parse和Facebook sdk 4.1登录和注册返回“用户取消登录”Objectice-c

时间:2015-06-19 13:07:32

标签: objective-c facebook facebook-graph-api login parse-platform

我最近将我的解析SDK更新为 1.7.4 ,将Facebook SDK更新为 4.1 ,但是为了获取用户数据的代码是有效的Facebook SDK 3.22.2在Facebook SDK 4.1中不起作用。我收到错误Unknow type FBRequest did you mean SKRequest?请帮忙。

This is the screenshot

- (void)requestFacebook:(PFUser *)user
{
FBRequest *request = [FBRequest requestForMe];
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error)
 {
     if (error == nil)
     {
         NSDictionary *userData = (NSDictionary *)result;
         [self processFacebook:user UserData:userData];
     }
     else
     {
         [PFUser logOut];
         [ProgressHUD showError:@"Failed to fetch Facebook user data."];
     }
 }];
}

2 个答案:

答案 0 :(得分:0)

新的Facebook SDK 4.x现在分为3个主要部分:FBSDKCoreKitFBSDKLoginKitFBSDKShareKit。 新版SDK已将FBRequest替换为FBSDKGraphRequestFBSDKGraphRequestConnection FBSDKCoreKit。将其导入您的代码并相应地修改您的实现。您可以看到如何使用新类here的示例。

答案 1 :(得分:0)

在使用de link验证后感谢您的帮助,我将我的代码更改为此代码并且工作正常,但在iOS 8.1中它没有蚀刻Facebook用户数据

FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphPath:@"me"
                                                               parameters:nil];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
     if (error == nil)
     {
         NSDictionary *userData = (NSDictionary *)result;
         [self processFacebook:user UserData:userData];
     }
     else
     {
         [PFUser logOut];
         [ProgressHUD showError:@"Failed to fetch Facebook user data."];
     }
 }];