getCurrentPlace只提供20个结果,过滤器不起作用

时间:2015-08-24 05:14:00

标签: android google-maps google-places-api

我正在尝试使用Places API for Android来列出我附近的地方。我使用了以下代码:

List<Integer> placeType = new ArrayList();
placeType.add(Place.TYPE_GROCERY_OR_SUPERMARKET);
PlaceFilter filter = new PlaceFilter(placeType, true, null, null);
PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi
        .getCurrentPlace(mGoogleApiClient, filter);

但我只得到了20个结果。此外,我应用的过滤器不起作用。结果没有区别,是否给出了一些pass filter参数null的过滤器。

请澄清。

谢谢, 拉胡

2 个答案:

答案 0 :(得分:3)

PlaceFilter不支持按类型过滤。

唯一支持的构造函数是下面的两个参数:

PlaceFilter(boolean requireOpenNow, Collection<String> restrictToPlaceIds)

如果您希望按类型进行限制,可以尝试手动查看getCurrentPlace()的结果并过滤具有TYPE_GROCERY_OR_SUPERMARKET类型的地点。

答案 1 :(得分:2)

您无法在Places.PlaceDetectionApi.getCurrentPlace中使用PlaceFilter来过滤场所类型。来自documentation

您可以选择指定PlaceFilter将结果限制为一个或多个地点ID(最多10个),或仅选择当前打开的地点。如果未指定过滤器,则不会过滤结果。