5

我目前正在开发一个 Android 应用程序,它使用 Facebook 图形 API 根据用户的位置获取页面/位置。我还想按类别过滤结果,例如餐馆。现在我只是像这样搜索“餐厅”这个名字: https ://graph.facebook.com/search?q=restaurant&type=place¢er=37.76,-122.427&distance=1000

问题是它不会找到没有名称“餐厅”的页面/地点,它还会返回与餐厅没有任何关系的地点。我也有语言问题,在非英语国家我的搜索将完全失败。

我正在考虑的一个可能的解决方案是获取一个范围内的所有位置并在我的应用程序中解析它们以获取类别或名称。显然,这给我的应用程序带来了很多开销。

我想知道是否有更好的解决方案,比如使用 FQL 来获得过滤结果?

4

1 回答 1

2

应该有,但我无法解开如何。

此 FQL 查询将为您提供有关已知位置附近所有地点的信息:

SELECT name, page_id, categories, description, general_info 
   FROM page WHERE page_id IN 
     (SELECT page_id FROM place WHERE 
        distance(latitude, longitude, "37.76", "-122.427") < 1000
      )

该字段是一个包含值和categories的数组。查看这些结果,有一系列类别名称,如“餐厅”:“意大利餐厅”、“酒吧/餐厅”等。idname

我找不到的是一种向它添加WHERE categories返回数据的子句的方法。

于 2012-06-22T02:40:20.330 回答