这类似于之前几次提出的问题,但无论我读什么,我仍然感到困惑。
我有一个公共Facebook页面,例如White Collar,我需要将其活动源嵌入到我的Android应用程序中。我理解如何获得app-id和app-secret,但我不了解如何获得短期访问令牌,我理解这是获取长期访问令牌所必需的。
根据我的理解,这很可能是错误的,用户必须通过应用程序登录才能获得短期访问令牌,但我不希望任何用户必须登录才能查看活动进料。
有了这个,我该如何使用它将此活动Feed添加到我的应用中?
Facebook的文档很糟糕,所以我需要一些帮助。
如果它或其他任何内容需要特定于站点的权限,我可以访问相关网站。
谢谢!
答案 0 :(得分:14)
要获取公共Facebook页面的活动供稿,例如White Collar,请按以下步骤操作:
1)通过选择现有应用或在此网址创建新应用来获取您的App-id和App-secret:
https://developers.facebook.com/apps/
2)通过向此网址发送GET请求来获取访问令牌:
https://graph.facebook.com/oauth/access_token?client_id=" + APP_ID + "&client_secret=" + APP_SECRET + "&grant_type=client_credentials
3)获取粉丝页面的页面ID。为此,您需要页面名称。转到Facebook上的粉丝页面查看网址。它将具有以下形式:
https://www.facebook.com/{fan-page-name}
完成后,请向此网址发出GET请求:
https://graph.facebook.com/{fan-page-name}?access_token={access-token}
它将返回一堆JSON。你正在寻找第一个“id”元素。这是您的网页ID。
4)使用GET请求获取粉丝页面JSON数据到此URL:
https://graph.facebook.com/" + page-id + "/feed?access_token=" + URLEncoder.encodeUTF8(access-token)
为避免抛出异常,我不得不使用URLEncoder.encodeUTF8().
您要查找的数据位于“data”元素下。
我无法找到任何可以为我提供Facebook Feed的JSON解析,但我确实发现这个tutorial会为你做很多格式化,让它看起来像Facebook
希望能帮助其他人尝试这样做。