4

我的应用程序允许用户使用 lat、lon 和地名登录 Facebook。但我不知道如何处理“地点”参数。

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

4

2 回答 2

6

每个可登记地点都必须有一个有效的地点 Facebook 页面。

place参数采用page_idPlace Facebook Page。

例如,page_idPlace Facebook Page 的 104999729569954 http://www.facebook.com/pages/Nanyang-Polytechnic/104999729569954


如果您的应用程序让您的用户根据他们当前的位置签到

1)使用外部地图服务,如谷歌地图的地理位置来获取用户当前位置的坐标(纬度和经度)。

从 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_idplace参数。赋值latitudelongitude进入coordinates参数。然后,您将能够发布签入。

您可以参考我在此处发布的发布签入示例。Facebook - 使用 PHP SDK/JavaScript SDK 发布签到


如果您的应用程序让您的用户根据从地名列表或图像库(在游戏或其他东西中)中的选择进行签到

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


文档

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

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

于 2012-08-09T11:44:14.693 回答
1

也许这就是你想要的。打开图形资源管理器只需将 URL 替换为任何 facebook 页面 url

fql?q=SELECT id FROM object_url WHERE url="https://www.facebook.com/LegendCinema"

于 2013-06-27T08:03:33.103 回答