1

我正在为 iOS6 编写 Facebook 解析器。昨天,我做了一个只有解析器的测试项目。这工作得很好。当我想在我的更大项目中实现解析器(使用完全相同的方法代码)时,会给出“解析错误:预期]”。社会和帐户的导入已设置。这是给出错误的行:

SLRequest *retrieveWall = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:newsFeed parameters:nil];

这是完整的方法:

-(void)fetchFacebookFrom:(NSString*)userID withAppKey:(NSString*)appKey
{
    ACAccountStore *accountStore = [[ACAccountStore alloc] init];
    ACAccountType *accountType = [accountStore
                                  accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];

    NSDictionary *options = @{
    @"ACFacebookAppIdKey" : appKey,
    @"ACFacebookPermissionsKey" : @[@"email"],
    @"ACFacebookAudienceKey" : ACFacebookAudienceEveryone
    };

    [accountStore requestAccessToAccountsWithType:accountType
                                          options:options completion:^(BOOL granted, NSError *error) {
         if(granted)
         {
             NSArray *arrayOfAccounts = [accountStore
                                         accountsWithAccountType:accountType];

             if ([arrayOfAccounts count] > 0)
             {
                 ACAccount *facebookAccount = [arrayOfAccounts lastObject];

                 NSURL *newsFeed = [NSURL URLWithString:@"https://graph.facebook.com/12345678901/feed"];

                 SLRequest *retrieveWall = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:newsFeed parameters:nil];

                 retrieveWall.account = facebookAccount;

                 [retrieveWall performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
                  {
                      if (error)
                      {
                          NSLog(@"Error: %@", [error localizedDescription]);
                      }
                      else
                      {
                          // The output of the request is placed in the log.
                          NSDictionary *jsonResponse = [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingAllowFragments error:nil];

                          NSArray *statuses = [jsonResponse objectForKey:@"data"];
                      }
                  }];

             }
         }
         else
         {
             NSLog(@"Not granted");
         }
     }];

}

该错误具体指向方法调用中的“URL”。

这个愚蠢的错误已经让我发疯了 3 个小时。我重新启动了 XCode,清理了项目并重新启动了我的 Mac。谁看到错误?

编辑:似乎这个特定的代码不是问题。我也添加了核心数据,它有一些在方法名称中带有 URL 的函数。现在,方法名称中带有 URL 的每个函数都会给出解析错误并指向“URL”。越来越接近问题,但仍然不存在!

4

1 回答 1

0

我们在头文件的某处定义了 URL。删除它修复了它。感谢您考虑解决方案!

于 2013-01-14T07:55:28.027 回答