Places API und Geocoding API mit datengestützten Stilen für Grenzen verwenden

Plattform auswählen: Android iOS JavaScript

Mit dem Places-Dienst und der Geocoding API im Maps SDK for Android können Sie nach Regionen suchen und weitere Informationen zu Orten erhalten. Der Places-Dienst und die Geocoding API sind leistungsstarke, stabile Alternativen zum Abrufen von Orts-IDs. Falls Sie bereits Orts-IDs nutzen, können Sie sie mit datengestützten Stilen für Begrenzungen wiederverwenden.

So binden Sie den Places-Dienst und die Geocoding API in Ihre Maps SDK for Android-Apps ein:

Places-Dienst verwenden

Mit „Text Search (New)“ nach einer Orts-ID suchen

Mit der Text Search (New) REST API in der Places API können Sie eine Orts-ID abrufen, die Regions daten enthält. Geben Sie dazu places.id in der Feldmaske an. Wenn Sie „Text Search (New)“ nur verwenden, um Orts-IDs anzufordern, fallen keine Gebühren an. Weitere Informationen.

Wenn Sie beispielsweise die Orts-ID für Trinidad, Kalifornien, abrufen möchten, können Sie den folgenden API-Aufruf ausführen:

curl -X POST -d '{
  "textQuery" : "Trinidad, CA"
}' \
-H 'Content-Type: application/json' -H 'X-Goog-Api-Key: API_KEY' \
-H 'X-Goog-FieldMask: places.id' \
'https://places.googleapis.com/v1/places:searchText'

„Place Autocomplete“ für die Suche nach Regionen verwenden

Mit dem Place Autocomplete Dienst im Places SDK for Android können Nutzer bequem nach Regionen suchen. Wenn der „Place Autocomplete“-Dienst nur Regionen zurückgeben soll, legen Sie den Typfilter mit AutocompleteSupportFragment.setTypesFilter(List) auf PlaceTypes.REGIONS fest.

Ortsdetails für eine Region abrufen

Der Place Details Dienst im Places SDK for Android gibt Daten für eine Region zurück, die sehr nützlich sein können. Beispielsweise können Sie:

  • anhand der Ortsnamen nach den Orts-IDs der jeweiligen Begrenzungen suchen
  • den Darstellungsbereich abrufen, um eine Begrenzung anzuzeigen
  • den Elementtyp für die Begrenzung abrufen (z. B. locality)
  • die formatierte Adresse abrufen, die in den USA in „Ort, Bundesstaat, Land“ aufgelöst wird (z. B. „Ottumwa, IA, USA“)
  • andere nützliche Daten wie Fotos abrufen.

Geocoding API verwenden

Mit der Geocoding API können Sie eine Adresse in Breiten- und Längengradkoordinaten und eine Orts-ID umwandeln oder Breiten- und Längengradkoordinaten oder eine Orts-ID in eine Adresse umwandeln. Die folgenden Anwendungsfälle lassen sich gut mit datengestützten Stilen für Begrenzungen kombinieren:

  • Geocoding verwenden, um den Darstellungsbereich für eine Region abzurufen
  • Das Filtern von Komponenten auf Ihren Geocoding-Aufruf anwenden, um die Orts-IDs für die Verwaltungsgebiete 1–4, den Ort oder die Postleitzahl abzurufen
  • Die umgekehrte Geocodierung verwenden, um Orts-IDs anhand von Breiten- und Längengraden zu ermitteln oder Orts-IDs für alle Komponenten an einem bestimmten Ort zurückzugeben

Im folgenden Beispiel wird eine Adresse (URL-codiert) verwendet, um eine Anfrage an die Geocoding API zu senden:

https://maps.googleapis.com/maps/api/geocode/json?address=1600%20Amphitheatre%20Pkwy%20Mountain%20View%20CA&key=YOUR_API_KEY

Mit der umgekehrten Geocodierung können Sie Orts-IDs finden. Im folgenden Beispiel für eine „Geocoding“-Dienstfunktion werden die Orts-IDs für alle Adresskomponenten an den angegebenen Breiten- und Längengraden zurückgegeben:

https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&key=YOUR_API_KEY

So verwenden Sie die umgekehrte Geocodierung mit Komponentenfilter, um die Adresskomponenten für einen oder mehrere der folgenden Typen am angegebenen Ort abzurufen:

  • administrativeArea
  • country
  • locality
  • postalCode

In der nächsten Beispielfunktion wird der „Geocoding“-Dienst verwendet, um Komponenteneinschränkungen mit umgekehrter Geocodierung hinzuzufügen und alle Adresskomponenten am angegebenen Ort nur für den Typ locality zu erhalten:

https://maps.googleapis.com/maps/api/geocode/json?latlng=41.864182,-87.676930&result_type=locality&key=YOUR_API_KEY