1

我曾经允许我的 IOS 应用程序的用户从他们的 Facebook 帐户中选择照片。它在 Facebook 旧版本中通过 Graph API 使用以下代码正常工作

    if(isFbPhotoRequest)
    [facebook requestWithGraphPath:@"me/albums"
                       andDelegate:self];

当我升级到新的 Facebook SDK 时。我通过查询专辑然后搜索这些专辑来做到这一点。专辑查询不起作用。我可以通过旧版Facebook SDK 2.0实现,但不能通过新版Facebook SDK 3.8实现

这是我用来拨打电话以获取专辑的代码

[FBRequestConnection startWithGraphPath:@"/me/albums"
                      completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                          if(error) {

                          }

                          NSArray* collection = (NSArray*)[result data];
                          NSLog(@"You have %d albums", [collection count]);


                      }];

此代码总是返回 0 个专辑。有没有办法摆脱这个问题?

4

1 回答 1

1

要获取相册,您需要设置“用户数据权限”。设置权限后,“/me/albums”将为您提供专辑对象数组。

您可以使用以下代码执行此操作:-

         [FBSession openActiveSessionWithReadPermissions:[NSArray arrayWithObject:@"user_photos"] allowLoginUI:NO completionHandler:^(FBSession *session, FBSessionState status, NSError *error) {

        [FBRequestConnection startWithGraphPath:@"/me/albums"
                              completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
                                  if(error) {

                                  }

                              }];
    }];
于 2014-01-12T21:27:28.987 回答