我正在使用适用于 Android 的 Google Places API,并试图将结果限制为仅显示餐厅。我已经包含了一个 PlaceFilter 并且似乎是正确的,但似乎没有应用过滤器并给出除 Restaurants 之外的其他结果。见代码:
ArrayList<String> restrictToRestaurants = new ArrayList<>();
restrictToRestaurants.add(Integer.toString(Place.TYPE_RESTAURANT));
PlaceFilter pf;
pf = new PlaceFilter(false, restrictToRestaurants);
PendingResult<PlaceLikelihoodBuffer> result = Places.PlaceDetectionApi.getCurrentPlace(mGoogleApiClient, pf);
result.setResultCallback(new ResultCallback<PlaceLikelihoodBuffer>() {
@Override
public void onResult(PlaceLikelihoodBuffer likelyPlaces) {
for (PlaceLikelihood placeLikelihood : likelyPlaces) {
placeLikelihood.getPlace().getPlaceTypes();
Log.i(TAG, String.format("Place '%s' with " + "likelihood: %g", placeLikelihood.getPlace().getName(), placeLikelihood.getLikelihood()));
}
likelyPlaces.release();
}
});
有人知道如何应用 PlaceFilter 吗?
最佳答案
目前,过滤 getCurrentPlace
结果的唯一方法在 PlaceFilter 中列出。类:
requireOpenNow if true, return only places open now
restrictToPlaceIds the specific PlaceIds to match
这些 PlaceId 中的每一个都应该与特定位置相匹配。不幸的是,目前尚不支持按地点类型(例如餐馆)过滤 Places.PlaceDetectionApi.getCurrentPlace
的结果。您引用的 Place.TYPE_RESTAURANT
可以在 AutocompleteFilter 中使用对于 GeoDataApi.getAutocompletePredictions
。
关于android - Google Places API PlaceFilter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30358460/