我有一个facebook用户的ID。如何获取用户名?
具体来说,我使用的是FBFriendPickerController
for (id<FBGraphUser> user in self.friendPickerController.selection) {
NSLog(@"The Facebook User: %@", user);
}
^这会输出名称,ID,名字,姓氏,个人资料照片等内容,但不会提供用户的用户名。
那么,关于FBFriendPickerController,获取所选用户的用户名的最佳方法是什么?
答案 0 :(得分:1)
设置好友拣货员控制器时,你可以做类似的事情:
// Initialize the friend picker
FBFriendPickerViewController *friendPickerController =
[[FBFriendPickerViewController alloc] init];
...
// Ask for friend device data
friendPickerController.fieldsForRequest =
[NSSet setWithObjects:@"username", nil];
然后,当返回朋友选择器数据时,也应返回用户名信息。
您可以实现朋友选择器委托方法,以获取用户名信息的迂回方式。实现:friendPickerViewController:shouldIncludeUser:
在此方法中,您可以检查应包含用户名的返回数据:
- (BOOL)friendPickerViewController:(FBFriendPickerViewController *)friendPicker
shouldIncludeUser:(id<FBGraphUserExtraFields>)user
{
NSString *username = user.username;
// Process the username however you wish to.
return YES;
}
对于类似的问题,在这种情况下查找“设备”信息,请参阅文档:https://developers.facebook.com/docs/howtos/filter-devices-friend-selector-using-ios-sdk/
答案 1 :(得分:0)
确定。我想出了一条出路。
您可以通过查看
返回的JSON来查找用户名graph.facebook.com/(fb_id)
但有没有一种更好的方法,直接来自friendPickerController,这就是问题。