我正在尝试确定我的 Facebook 朋友中谁目前正在使用我的应用程序。据我所知,一般的智慧是使用图形 api,并在获取您的朋友列表时发送“已安装”参数。这似乎对我不起作用,我想知道我哪里出错了。这是我的代码:
首先,有效的权限:
_facebookPermissions = @[@"publish_stream", @"read_stream", @"friends_photos", @"user_photos"];
现在 SLRequest 和它的设置:
NSString *username = [[NSUserDefaults standardUserDefaults] objectForKey:@"fbUserID"];
NSString *urlString = [NSString stringWithFormat:@"https://graph.facebook.com/%@/friends", username];
NSURL *friendsList = [NSURL URLWithString:urlString];
NSDictionary *friendsListParameters = @{@"fields": @"id,name,picture,installed"};
SLRequest *getFriends = [SLRequest requestForServiceType:SLServiceTypeFacebook requestMethod:SLRequestMethodGET URL:friendsList parameters:friendsListParameters];
现在是一个示例结果:
{
id = 10000123456911;
name = "Don Dobrian";
picture = {
data = {
"is_silhouette" = 0;
url = "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-ash3/41664_100001237218111_2269_q.jpg";
};
};
},
如您所见,权限几乎可以让我获得一切。但是根本没有迹象表明甚至注意到了“已安装”参数。所以这是我的问题,任何一个问题的答案都可以解决我的问题:
- 你是这样做的吗?您使用什么权限来获取“已安装”状态?
- 有没有更好的方法来使用 iOS 社交框架获取这些信息?