如何在iOS App中集成Facebook用户的新闻源(或)Wall帖子

时间:2014-01-10 17:11:36

标签: ios objective-c cocoa-touch facebook-fql facebook-sdk-3.1

我正在尝试集成自定义视图,该视图显示用户Facebook新闻Feed的一些帖子。

我正在寻找一个好的起点。我不想使用UIWebView或类似的东西来获取Facebook的移动网站,而是希望以JSON格式或类似方式获取数据并以自定义方式显示它。

您能否向我提供任何建议或链接指导我如何获取Facebook新闻Feed数据?

编辑:我想更新我的要求。我看了一下Facebook文档和SDK。有一些示例代码很有用,但我缺少一个直接的教程或示例,它可以获取用户的新闻源并显示它。这就是我获得赏金的原因。

我会为那些创建示例或教程的人提供+100 Rep,这些示例或教程会获取用户新闻源的帖子。必需的是:获取海报,消息,时间戳和附加图像的名称。如果你也在uiview中展示它们会很好,但这不是必需的。如果现有框架可以随意链接它。

我正在做类似的事情,也会发布它。我认为这可以向社区致敬。

5 个答案:

答案 0 :(得分:2)

我创建了一个示例启动项目,该项目获取用户的facebook newsfeed并显示它。它显示了谁发布了帖子,海报的个人资料图片,以及何时与帖子一起发布。

这是相当简陋的,可以使用其他开发人员的一些增强功能,即无限滚动,显示任何链接,喜欢或识别URL等。

https://github.com/AaronBratcher/UserFeed

答案 1 :(得分:1)

我会在我的项目中集成Facebook API,然后您就可以访问Facebook上提供的许多信息。

一个好的起点是阅读您可以在这里找到的文档: https://developers.facebook.com

这不难理解,但它有很多信息!

祝你好运。

答案 2 :(得分:1)

首先,您的应用需要“read_stream”权限。 然后阅读Facebook查询语言(FQL)参考https://developers.facebook.com/docs/reference/fql/

要获取新闻源,您可以使用以下代码:

NSString *fqlString = @"SELECT * FROM stream WHERE filter_key IN (SELECT filter_key FROM stream_filter WHERE uid=me() AND type='newsfeed') AND is_hidden=0 LIMIT <YOUR_LIMIT>";

[FBRequestConnection startWithGraphPath:@"/fql"
                     parameters: @{@"q": fqlString}
                     HTTPMethod:@"GET"
                     completionHandler:^(FBRequestConnection *connection, id result, NSError *error) 
                     {
                          <ANALYZE RESPONSE>
                     }];

答案 3 :(得分:1)

  1. Facebook API / SDK请求包装器
  2. 新闻发布课程
  3. 用于测试代码的简单UI
  4. 入门:

    facebook-sdk-posting-to-user-news-feed

    Sample App

答案 4 :(得分:0)

据我所知,您无法在应用程序中获取News Feed数据。 stream表格仅显示您墙上的帖子。要为用户创建新闻Feed,Facebook使用自己的私有算法(它是Facebook Edgerank,但最近他们已经将此算法更改为新算法)。

就我而言,为了实现您的目标,您可以抓取所有朋友的数据,并尝试创建一个算法,将这些帖子的范围与Facebook的方式类似。