My goal is to restrict the Autocomplete results from the Google Places Android API to a particular country (United States) only.
I am using the following API:
PendingResult<AutocompletePredictionBuffer> results =
Places.GeoDataApi
.getAutocompletePredictions(mGoogleApiClient, constraint.toString(),
mBounds, mPlaceFilter);
Looks like LatLngBounds is supposed to do this job.
If yes, then what are the values of LatLngBounds for United States?
Which source did you use to get LatLngBounds for a country?
LatLngBounds is a rectange - so it can include other countries in the result as well. What about that?
Is there a better way to do it?
Starting from Google Play Services v9.6,you can now set a country filter to your autocomplete suggestions. Please make sure your Play Services version is at least v9.6
AutocompleteFilter autocompleteFilter = new AutocompleteFilter.Builder()
.setTypeFilter(Place.TYPE_COUNTRY)
.setCountry("US")
.build();
Intent intent = new PlaceAutocomplete.IntentBuilder(PlaceAutocomplete.MODE_FULLSCREEN)
.setFilter(autocompleteFilter)
.build(this);
You can change the country codes by using their ISO 'Aplha 2' Codes