Wie erhalten Sie länderspezifische Ergebnisse in der Google Places-API für AutocompletePredictions in Android?

8

Ich möchte Suchergebnisse für ein bestimmtes Land erhalten. Ich habe versucht, Breiten- und Längengrad zu setzen, aber es kann auch die Ergebnisse anderer Länder in der Nähe des gewünschten Landes enthalten!

Ich habe andere Fragen gesehen, die vorschlagen, &components=country:COUNTRY_NAME in der Anfrage-URL zu übergeben (ich habe hier gesehen) . Aber ich möchte die Anfrage von der Google Places-API weitergeben.

Ich verwende folgende Methode:

  

Places.GeoDataApi.getAutocompletePredictions (mGoogleApiClient,   constraint.toString (), mBounds, mPlaceFilter);

Aber ich konnte keine Möglichkeit finden, einen Ländernamen zu vergeben, um das Ergebnis für das jeweilige Land zu erhalten. (Ich habe versucht, den Namen des Landes in der Anfrage-URL zu übergeben, und es funktioniert.) Aber wie erreicht man dasselbe mit Places.GeoDataApi.getAutocompletePredictions() Methode?

Oder gibt es eine andere Möglichkeit, dies zu erreichen, ohne den Ländernamen in der Anfrage-URL zu senden?

    
Chintan Shah 01.12.2015, 11:03
quelle

4 Antworten

13
%Vor%     
100rbh 30.09.2016, 06:44
quelle
4
  

Die (regions) type-Auflistung weist den Places-Dienst an, zurückzugeben   jedes Ergebnis, das den folgenden Typen entspricht:

     
  • Lokalität
  •   
  • Unterlage
  •   
  • postal_code
  •   
  • Land
  •   
  • administrative_area_level_1
  •   
  • administrative_area_level_2
  •   

Die (Regionen) geben Sammlung wird in Google Places API für Android nicht unterstützt.

Referenz von: Official Guide von Google Ortstypen

.

Wenn Sie dies implementieren möchten,

  • Die Nutzung LatLng Grenzen mit Ihrem speziellen Bereich des Landes durch die Breite und Länge angegeben, die Ergebnisse zu beschränken.

  • Sie können auch die Google Places Web Service verwenden.

Beispiel: Zur Einschränkung Ihres Landes über den Web-Service mit Ergebnissen des Landes Indien.

URL: Ссылка

Hinweis: Wenn Sie die country Filter auf Google Places API anwenden möchten, leider haben Sie WebService verwenden ab sofort kein Filter / Methode verfügbar es in Android API ist zu Beschränkung nach Land (außer LatLng-Grenzen).

    
Vipul Asri 02.12.2015 09:08
quelle
2

Mit Javascript können Sie Komponentenbeschränkungen wie unter dem Code verwenden, versuchen Sie, für Android neu zu schreiben:

%Vor%     
Piyush Sahu 02.12.2015 08:46
quelle
0

Es gibt zwei Möglichkeiten, wie Sie dies tun können.

  1. Verwenden Sie latLng-Grenzen für Ihr Land, um die Ergebnisse einzuschränken (dies wären jedoch rechteckige Grenzen. Daher wäre die Einschränkung ungefähr).

2 Sie sollten die Webservice-API verwenden. Es funktioniert auch mit Android.

Ссылка

Sie können Adresstypen und Adresskomponenten verwenden, um die Ergebnisse mit dieser API auf die von Ihnen gewünschte Weise einzuschränken:

Ссылка

    
shreyas 01.12.2015 11:13
quelle