Man*_*noj 13 android google-places-api google-play-services
我在PlaceAutocompleteApiPlay服务中使用,我想要做的是限制自动完成到特定的国家和城市.例如.所有城市都只能说是印度.我正在使用AutocompleteFilter这样做,但我不知道在哪里指定我想限制的国家/地区.
这是我的代码
List<Integer> autocompleteFilter = new ArrayList<>();
// autocompleteFilter.add(Place.TYPE_COUNTRY);
// autocompleteFilter.add(Place.TYPE_LOCALITY);
mAdapter = new PlaceAutocompleteAdapter(mContext,R.layout.layout_location_text,
mGoogleApiClient, BOUNDS, AutocompleteFilter.create(autocompleteFilter));
mTxtLocation.setAdapter(mAdapter);
mTxtLocation.setOnItemClickListener(mAutocompleteClickListener);
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?
这样做的方法是将国家/地区作为components参数添加到Web服务URL:
StringBuilder sb = new StringBuilder(PLACES_API_BASE + TYPE_AUTOCOMPLETE + OUT_JSON);
sb.append("?key=" + API_KEY);
sb.append("&components=country:in");
Run Code Online (Sandbox Code Playgroud)
对于城市,您可以使用以下administrative_area_level_3标记:
sb.append("&components=administrative_area_level_3:bengaluru");
Run Code Online (Sandbox Code Playgroud)
或者locality标签:
sb.append("&components=locality:redmond");
Run Code Online (Sandbox Code Playgroud)
参考文献:
1. 地理编码API.
2. 地址类型和组件类型.
3. Android应用中的Google Place API自动填充服务.
| 归档时间: |
|
| 查看次数: |
8253 次 |
| 最近记录: |