Übersicht über die Migration

In diesem Leitfaden werden die wichtigsten Unterschiede zwischen dem bisherigen Places-Dienst und der neuen „Place“-Klasse hervorgehoben. Ein Upgrade auf die „Place“-Klasse bietet erhebliche Vorteile, darunter eine verbesserte Leistung und ein neues Preismodell. Damit Sie Google Lokale Dienstleistungen optimal nutzen und Ihre Apps auf dem neuesten Stand halten können, sollten Sie sich mit den in diesem Leitfaden beschriebenen Änderungen vertraut machen.

Places API aktivieren

Die Place-Klasse verwendet den Places API-Dienst. Wenn Sie die Funktionen der neuen „Place“-Klasse verwenden möchten, müssen Sie zuerst die Places API (New) in Ihrem Google Cloud-Projekt aktivieren. Weitere Informationen finden Sie unter Einstieg.

Allgemeine Änderungen

In der folgenden Tabelle sind einige der Hauptunterschiede zwischen PlacesService und Place aufgeführt:

PlacesService (alt) Place (neu)
Für Methoden ist ein Callback erforderlich, um das Ergebnisobjekt und die google.maps.places.PlacesServiceStatus-Antwort zu verarbeiten. Verwendet Promises und funktioniert asynchron.
Für Methoden ist eine PlacesServiceStatus-Prüfung erforderlich. Keine Statusprüfung erforderlich, Standardfehlerbehandlung kann verwendet werden.
Ortsdatenfelder werden in Snake Case formatiert. Felder für Ortsdaten werden in Camel Case formatiert.
Beschränkt auf eine feste Anzahl von Ortstypen und Ortsdatenfeldern. Bietet eine erweiterte Auswahl an regelmäßig aktualisierten Ortstypen und Ortsdatenfeldern.

API-spezifische Änderungen

Die Place-Klasse bietet eine API für die Verwendung der Places Library und unterstützt moderne Nutzungsmuster wie Promises. Die „Place“-Klasse stellt dieselben Felder für „Place“-Daten und Ortstypen wie der bisherige Places-Dienst bereit und enthält viele neue Werte für Felder für „Place“-Daten und Ortstypen.

In dieser Tabelle wird dargestellt, wie Funktionen des Places-Dienstes den Funktionen der „Place“-Klasse zugeordnet sind:

Places Service (Legacy) Place Class (New)
Ortsdatenfelder Datenfelder der „Place“-Klasse
Ortstypen Ortstypen
PlacesService.findPlaceFromQuery() Place.searchByText()
PlacesService.findPlaceFromPhoneNumber() Place.searchByText()
PlacesService.textSearch() Place.searchByText()
PlacesService.nearbySearch() Place.searchNearby()
PlacesService.getDetails() Place.fetchFields()
Places.AutocompletionRequest Places.AutocompleteRequest
Places.AutocompletePrediction Places.PlacePrediction
Autocomplete-Klasse PlaceAutocompleteElement-Klasse
SearchBox-Klasse ---

Places Library laden

Wie die Places-Bibliothek in Ihrer App geladen wird, hängt davon ab, welcher Bootstrap-Ladeprogramm verwendet wird. Wenn Ihre App den dynamischen Bibliotheksimport verwendet, können Sie die erforderlichen Bibliotheken während der Laufzeit laden, indem Sie importLibrary() mit dem Operator await aufrufen, wie hier gezeigt:

const { Place } = await google.maps.importLibrary("places");

Wenn in Ihrer App das Tag zum direkten Laden von Scripts verwendet wird, fordern Sie die places-Bibliothek im Ladescript an:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>

Weitere Informationen zum Laden der Maps JavaScript API

In diesem Abschnitt finden Sie die folgenden Leitfäden, die Ihnen bei der Migration Ihrer Apps zur neuesten Version der Places API helfen: