facebook - 如何在checkin前获取place_id?

标签 facebook facebook-graph-api checkin

我的应用程序允许用户使用纬度、经度和地名登录 Facebook。但是我不知道如何处理“place”参数。

有没有办法获得或创建一个?

最佳答案

每个可检查的地方都必须有一个有效的地方 Facebook 页面。

place参数接受 page_id的地方 Facebook 页面。

例如,page_id Place Facebook 页面的 104999729569954 http://www.facebook.com/pages/Nanyang-Polytechnic/104999729569954


如果您的应用允许您的用户根据他们当前的位置签到

1) 使用外部 map 服务,例如 Google Map 的 Geolocation 获取用户当前位置的坐标(纬度和经度)。

从 Google map 返回的坐标集与 Facebook 自己的坐标集不同。

2) 为了克服这个问题,执行 FQL 查询以找到 Facebook 坐标与 Google map 坐标的最接近匹配。

SELECT page_id,latitude,longitude FROM place WHERE distance(latitude, longitude, "LAT_HERE", "LON_HERE") < 250

250指的是它将搜索的半径(m),它可以达到 50000 .

3) 现在你有 page_id , latitudelongitude .分配 page_id进入place范围。分配 latitudelongitude进入coordinates范围。然后您将能够发布签到。

您可以引用我在这里发布的发布 checkin 示例。 Facebook - Publish Checkins using PHP SDK/JavaScript SDK


如果您的应用程序允许您的用户根据地名列表或图片库中的选择进行签到(在游戏或其他方面)

您只需要找到 page_id每个地方的名称并将它们绑定(bind)到各自的地名或图像。


文档

页面 FQL - http://developers.facebook.com/docs/reference/fql/page/

签到 API - http://developers.facebook.com/docs/reference/api/user/#checkins

关于facebook - 如何在checkin前获取place_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11828940/

相关文章:

visual-studio - TFS 2010 Gated Check-in Build 给我留下了一个带有待处理更改的 .vspscc 文件

python - AppEngine Python 上的 Facebook "Login"(OAuth2)

ios - 使用 pod install 后出现 Swift 错误(clang : error: linker command failed with exit code 1 )

facebook - 使用Azure的Facebook Messenger Bot主动/推送通知

android - RequestBatch.Callback onBatchCompleted() 未调用

php - 使用 Facebook API 在提要对话框中标记某人

svn - 是否可以使用颠覆将单个文件提交到共享同一父目录的多个目录

vb.net - 无法在 TFS 中 checkin UserControl.xaml 文件。接收错误: TF10169

javascript - 当查看者未登录 Facebook 时,Facepile iframe 为白色

ios - 使用 PFFFacebookUtilsV4 Cocoapods 在 Swift 中获取 Facebook 用户详细信息