FBSDKGraphRequest使用未声明的标识符

时间:2015-05-21 13:22:41

标签: ios objective-c facebook-ios-sdk

虽然我已经导入了像#import <FacebookSDK/FacebookSDK.h>这样的FacebookSDK,但它说: 使用未声明的标识符'FBSDKGraphRequest'。

我写的代码很简单:

FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc]
                                      initWithGraphPath:@"/{user-id}/albums"
                                      parameters:params
                                      HTTPMethod:@"GET"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection,
                                              id result,
                                              NSError *error) {
            // Handle the result
        }];

让我知道我可能缺少什么?

2 个答案:

答案 0 :(得分:4)

自版本4.X以来,Facebook已将SDK拆分为3个部分:

Per documentation

  

SDK现在由三个框架FBSDKCoreKit组成,   FBSDKLoginKitFBSDKShareKit

     

FBSDKCoreKit提供核心SDK   功能,如图谱API请求,访问令牌和应用程序   的见解。

     

FBSDKLoginKit提供了记录人员的功能,以及   只需要FBSDKCoreKit

     

FBSDKShareKit提供了功能   分享,只需要FBSDKCoreKit

关于你的问题:

  

请求 - FBSDKGraphRequestFBSDKGraphRequestConnection在   FBSDKCoreKit并提供帮助以访问Graph API

所以基本上你需要在文件中导入FBSDKCoreKit

#import <FBSDKCoreKit/FBSDKCoreKit.h>

答案 1 :(得分:1)

使用新的SDK 4.1登录Facebook您必须在项目中添加FBSDKLoginkit和FBSDKCoreKit框架。

然后将以下头文件导入ViewController:

#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <FBSDKLoginKit/FBSDKLoginKit.h>

有关详细信息,请参阅the facebook official document here,或者您可以参考这些答案

  1. First answer
  2. Second answer
  3. 尽管facebook官方文档最好。