我正在开发一个应用程序,我想向朋友展示生日。这可能吗?如何从 Facebook 获取朋友的出生日期?
3 回答
您必须请求以下许可:-
在您的 .h 文件中定义宏,例如:-
#define kFBPermission @"@\"offline_access\", @\"publish_stream\",@\"friend_birthday\",@\"user_events\",@\"read_stream\",@\"friends_likes\""
现在在 .h 文件中 write.objDelegate 是 AppDelegate 类的对象。
if (![objDelegate.facebook isSessionValid])
{
[objDelegate.facebook authorize:App_ID permissions:[NSArray arrayWithObjects:@"offline_access",@"publish_stream",@"friends_birthday",@"user_events",@"read_stream",@"friends_likes", nil] delegate:self];
}
要在标签中显示生日,请使用:-
[lblDOB setText:[NSString stringWithFormat:[self.friendDictionary valueForKey:@"birthday"]]];
希望它有所帮助。谢谢:)
默认情况下,大多数对象属性都会在您进行查询时返回。您可以使用“fields”查询参数选择要返回的字段(或连接)。例如,这个 URL 只会返回 Ben 的 id、name 和图片:https ://graph.facebook.com/bgolub?fields=id,name,picture
您还可以使用“ids”查询参数在单个查询中请求多个对象。例如,URL https://graph.facebook.com?ids=arjun,vernal在同一响应中返回两个配置文件。
“ids”查询参数也接受 URL。这对于在 Open Graph 中查找 URL 的 ID 很有用。例如:https ://graph.facebook.com/?ids=http://www.imdb.com/title/tt0117500/
此外,还有一个特殊标识符 me,它指的是当前用户。因此 URL https://graph.facebook.com/me返回活动用户的个人资料。
通过 /home、/feed 或 /posts 连接检索帖子时,您可以通过在 URL 参数中添加 with=location 来将结果限制为仅包含附加位置的结果: https ://graph.facebook.com/me/家?有=位置
要从 Facebook 帐户获取朋友的生日,请使用 Facebook 连接。
这是您必须触发如下查询才能获取朋友信息的代码。
- (IBAction)getFriends {
[self initFacebook];
if ([facebook isSessionValid]) {
[facebook requestWithGraphPath:@"me/friends?fields=id,name,gender,picture,birthday" andDelegate:self];
} else {
[self loginToFacebook];
}
}