我使用sdk facebook下载使用相同应用程序的朋友列表。
以下是我使用的方法:
-(void)fb_listaAmici
{
[FBRequestConnection startWithGraphPath:@"/me/friends"
parameters:@{@"fields": @"id,name"}
HTTPMethod:@"GET"
completionHandler:^(
FBRequestConnection *connection,
id result,
NSError *error
) {
NSArray *friendObjects = [result objectForKey:@"data"];
self.listaAmici = [NSMutableArray arrayWithCapacity:friendObjects.count];
// Create a list of friends' Facebook IDs
for (NSDictionary *friendObject in friendObjects) {
[self.listaAmici addObject:[friendObject objectForKey:@"id"]];
}
}];
}
当我通过类调用该方法时,varibile的结果为null:
CoreFoundation = 1141.140000
12/08/2014 18: 02: 14,755 Test2 [2604: 63309] (null)
12/08/2014 18: 02: 15,438 Test2 [2604: 63309] (null)
12/08/2014 18: 02: 15,704 Test2 [2604: 63309] (null)
12/08/2014 18: 02: 15,871 Test2 [2604: 63309] (null)
12/08/2014 18: 02: 16 021 Test2 [2604: 63309] (null)
请帮助我......谢谢!
答案 0 :(得分:0)
什么是结果类型?不是NSArray吗? 尝试做:
__weak __typeof(self)weakSelf = self;
[FBRequestConnection startWithGraphPath:@"/me/friends?fields= installed,id..."
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
__strong __typeof(weakSelf)strongSelf = weakSelf;
//(check the results' type!)
strongSelf.listaAmici = results;
}
答案 1 :(得分:0)
这是一个坏消息:
一个人登录Facebook登录v2.0后,打电话 /v1.0/me/friends和/v2.0/me/friends都会产生v2.0 行为 - 两个电话都会返回该人的朋友 也可以使用该应用程序。
再次
在v2.0中,朋友API端点返回一个人的列表 也正在使用您的应用的朋友。在v1.0中,包括响应 所有的朋友。
清楚地写在Facebook Platform Upgrade Guide。
因此,在开发阶段,列表很可能是空的。
再次注意,在文档的顶部:
防止您的移动应用中遇到破碎的体验 - 我们建议 在12月25日之前升级到v2.0 +