我曾经允许我的IOS应用程序的用户从他们的Facebook帐户中选择照片。通过Graph API使用以下代码在Facebook旧版本中正常工作
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张专辑。有没有办法解决这个问题?
答案 0 :(得分:1)
要获取相册,您需要设置“用户数据权限”。一旦你设置了权限,“/ me / albums”就会给你一些Album对象。
您可以使用以下代码执行此操作: -
[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) {
}
}];
}];