如何从原生 iOS Facebook SDK 获取用户兴趣?
Posted
技术标签:
【中文标题】如何从原生 iOS Facebook SDK 获取用户兴趣?【英文标题】:How to get user interests from the native iOS Facebook SDK? 【发布时间】:2012-10-28 07:56:02 【问题描述】:我一直在阅读文档,但找不到任何东西。对于名称、id 等其他属性,它们在 FBGraphUser 类中可用。我需要的是用户的兴趣列表。我相信我必须使用 FBGraphObject 类,但我不确定如何去做。任何指导将不胜感激。谢谢!
【问题讨论】:
你在寻找我/兴趣的等价物吗? 我正在通过 Objective-C 库寻找某种本机方法。 您能否提供更多关于兴趣列表含义的信息,即如果您使用 Graph API 资源管理器进行 Graph API 调用,那么等效调用是什么? 这和你之前说的差不多。 /friend_id/interests/access_id 找到任何解决方案了吗? 【参考方案1】:me/interests 是您获取用户兴趣的方式。如果你正在寻找其他人,比如用户的朋友,那么 id/interests
这取决于正在登录的用户
-(void)fbRequest
[FBRequestConnection startWithGraphpath:@"me/interests" completionHandler:^(FBRequestConnection *connection,NSDictionary<FBGraphObject> *result,NSError *error)
if(!error)
NSArray *data = [result objectForKey:@"data"];
[self updateInterests:data];
else
];
-(void)updateInterests:(NSArray*)interests
NSString *str = self.groupList.text;
for(FBGraphObject <FBGraphUser>*interest in interests) //Using FBGraphUser because it implements name though I'd love to use something else
str = [str stringByAppendingFormat:@"%@\n",interest.name ];
[self.groupList setText:str];
上述方法的替代方法不依赖于graphuser有名字的巧合,所以这里是
-(void)updateInterests:(NSArray*)interests
NSString *str = self.groupList.text;
for(FBGraphObject *interest in interests) //Using FBGraphUser because it implements name though I'd love to use something else
str = [str stringByAppendingFormat:@"%@\n",[interest objectForKey:@"name"] ];
[self.groupList setText:str];
【讨论】:
注意:self.groupList 只是一个uiLabel。 我/兴趣现在不起作用?对于同一问题,您有任何替代解决方案 我实际上只是在图形资源管理器中运行我/兴趣与 2.1 api 并获得了结果...developers.facebook.com/tools/explorer 请检查资源管理器并确认您的问题。以上是关于如何从原生 iOS Facebook SDK 获取用户兴趣?的主要内容,如果未能解决你的问题,请参考以下文章
我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别
如何从 iOS 上的 Facebook SDK 获取用户数据