Übersicht über die Migration

In diesem Leitfaden werden die wichtigsten Unterschiede zwischen dem bisherigen Places Service 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.

Best Practices für die Abrechnung bei der Migration

Diese Hinweise gelten, wenn Ihre API-Nutzung hoch genug ist, um in die zweite Preisstufe zu wechseln. Wenn Sie zu einer neueren Version einer API migrieren, wird Ihnen auch eine andere SKU in Rechnung gestellt. Um erhöhte Kosten im Monat der Umstellung zu vermeiden, empfehlen wir, so nah wie möglich am Monatsanfang auf die neuen APIs umzustellen. So können Sie im Migrationsmonat die kostengünstigsten monatlichen Preisstufen erreichen. Informationen zu Preisstufen finden Sie auf der Preisseite und in den häufig gestellten Fragen zu Preisen.

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 gezeigt, 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: