SLRequest给出解析错误:预期]

时间:2013-01-11 10:36:28

标签: objective-c facebook ios6 social-framework slrequest

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

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的每个函数都会产生一个Parse Error并指向“URL”。越来越接近问题,但仍然不存在!

1 个答案:

答案 0 :(得分:0)

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