我的应用程序允许用户使用 lat、lon 和地名登录 Facebook。但我不知道如何处理“地点”参数。
有没有办法获得或创建一个?
我的应用程序允许用户使用 lat、lon 和地名登录 Facebook。但我不知道如何处理“地点”参数。
有没有办法获得或创建一个?
每个可登记地点都必须有一个有效的地点 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,latitude和longitude。赋值page_id给place参数。赋值latitude并longitude进入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
也许这就是你想要的。打开图形资源管理器只需将 URL 替换为任何 facebook 页面 url
fql?q=SELECT id FROM object_url WHERE url="https://www.facebook.com/LegendCinema"