使用 Parse.com iOS 获取 Facebook 好友
Posted
技术标签:
【中文标题】使用 Parse.com iOS 获取 Facebook 好友【英文标题】:Get Facebook friends with Parse.com iOS 【发布时间】:2016-02-17 12:20:31 【问题描述】:以下是我为登录用户获取 facebook 好友的代码。
FBSDKGraphRequest *request = [[FBSDKGraphRequest alloc] initWithGraphpath:@"/me/friends" parameters:@@"fields": @"email, name, first_name, last_name, user_friends, id"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error)
if (!error)
NSArray *friendObjects = [result objectForKey:@"data"];
NSMutableArray *friendIds = [NSMutableArray arrayWithCapacity:friendObjects.count];
// Create a list of friends' Facebook IDs
for (NSDictionary *friendObject in friendObjects)
[friendIds addObject:[friendObject objectForKey:@"id"]];
// Construct a PFUser query that will find friends whose facebook ids
// are contained in the current user's friend list.
PFQuery *friendQuery = [PFUser query];
[friendQuery whereKey:@"fbId" containedIn:friendIds];
[friendQuery findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error)
if (error)
else
self.friendUsers = objects; // self.friendUsers in array
[self.tableView reloadData];
];
];
我没有得到任何结果,我不确定我为什么要按照这里的步骤https://parse.com/questions/how-can-i-find-parse-users-that-are-facebook-friends-with-the-current-user
请帮忙
【问题讨论】:
你有没有朋友已经是同一个应用的用户,并且也给了user_friends
权限?
@CBroe 嗨,我的 Facebook 朋友中没有一个正在使用解释为什么大声笑的应用程序。但是代码是否应该包括这个initWithGraphPath:@"/me/friends"
我想应该是这样(尽管我对 android 应用程序的经验很少)。我建议您通过应用仪表板创建一些测试用户,让他们成为朋友,然后使用其中之一测试您的应用。
@CBroe 这是为 ios 而不是 android
啊,同样的区别:)
【参考方案1】:
user_friends Facebook 权限只返回用户已经批准user_friends
权限给应用的朋友。
为了让一个人出现在一个人的朋友列表中,两个 人们一定已经决定与您的应用分享他们的朋友列表 并且在登录期间没有禁用该权限。两个朋友也必须 在登录过程中被要求提供 user_friends。 1
因此,除非您的某些 Facebook 朋友已经批准了对同一应用的许可,否则您将获得一个空的朋友列表。
【讨论】:
以上是关于使用 Parse.com iOS 获取 Facebook 好友的主要内容,如果未能解决你的问题,请参考以下文章
在 iOS 8 Today Extension 中获取 parse.com 用户数据时出现异常
parse.com / iOS - 有没有办法以 json 格式下载整个类对象?