在Google Places API中过滤建筑类型

对于我正在开发的Android应用程序,我想找到当前位置附近的酒吧 . 我想到的第一件事就是使用google places api的google地方 .

所以在查找了docoumentation之后,我创建了一个简单的测试套件,以便使用我的API密钥等来获取api的结果 . 然后我尝试过滤它以便它只显示酒吧/夜总会 . 在查找支持的类型列表(http://code.google.com/intl/nl-NL/apis/maps/documentation/places/supported_types.html)后,我决定'bar','cafe'和'night_club '是与酒吧相匹配的类型 . 但在应用该过滤器之后,它只发现了我提供的范围内的50个酒吧中的1个 . 所以我试着靠近50米半径的所有地方,从我知道很多酒吧的地方 . 在那里,我注意到大多数酒吧只有“ Build ”类型,但谷歌 Map 附带的谷歌地方应用程序确实发现酒吧很好,如果我在菜单中选择酒吧 . 是否有人建议使用什么来找到酒吧,因为这些类型过滤器似乎不起作用 . 还是我错过了什么?

回答(3)

2 years ago

Y.A.P.'s statement 相矛盾的Google API文档解释了管道符号充当 OR 而不是 AND

types (optional) - 将结果限制为与至少一个指定类型匹配的地方 . 类型应使用管道符号( type1|type2|etc )分隔 .

http://code.google.com/apis/maps/documentation/places/#PlaceSearchRequests

2 years ago

这将是一个晚期;)但是:酒吧|食物将找到类型酒吧和食物的地方 . 只有具有这两种类型的地方才会出现响应 . 如果你想得到酒吧和食物使它两个相互查询 .

2 years ago

所有商家都归类为 establishment 类型,直到Google有足够的元数据来分类地点,以便在更具体的地方类型(如 barcafenight_club )下对其进行分类 .

可以找到更多结果的解决方法是在请求中使用 keyword 参数,例如'bar'作为值 .

根据文档:http://code.google.com/apis/maps/documentation/places/

  • keyword 参数与所有可用字段匹配,包括但不限于名称,类型和地址,以及客户评论和其他第三方内容 .