Migration – Übersicht

Entwickler im Europäischen Wirtschaftsraum (EWR)

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

Best Practices für die Abrechnung bei der Migration

Diese Anleitung gilt, 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 höhere Kosten im Monat der Umstellung zu vermeiden, empfehlen wir, die neuen APIs in der Produktion möglichst am Anfang des Monats zu aktivieren. So erreichen Sie im Migrationsmonat die kostengünstigsten monatlichen Preisstufen. Informationen zu den Preisstufen finden Sie auf der Preisseite und in den FAQs zu Preisen.

Places API aktivieren

Die Place-Klasse basiert auf dem 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 Erste Schritte.

Allgemeine Änderungen

In der folgenden Tabelle sind einige der wichtigsten Unterschiede 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.
Methoden erfordern eine PlacesServiceStatus-Prüfung. Keine Statusprüfung erforderlich, Standardfehlerbehandlung kann verwendet werden.
Places-Datenfelder werden im Snake-Case-Format formatiert. Places-Datenfelder werden in Camel-Case-Schreibweise formatiert.
Beschränkt auf eine feste Gruppe von Ortstypen und Ortsdatenfeldern. Bietet eine erweiterte Auswahl an regelmäßig aktualisierten Ortstypen und Ortsdatenfeldern.

API-spezifische Änderungen

Die Place-Klasse bietet eine API zum Verwenden der Places Library und unterstützt moderne Nutzungsmuster wie Promise-Objekte. Die Klasse „Place“ stellt dieselben Ortsdatenfelder und Ortstypen wie der alte Places Service bereit und enthält viele neue Werte für Ortsdatenfelder und Ortstypen.

In dieser Tabelle sehen Sie, wie die Funktionen des Places Service den Funktionen der Klasse „Place“ zugeordnet werden:

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
Klasse Autocomplete Klasse PlaceAutocompleteElement
Klasse SearchBox ---

Places Library laden

Wie die Places-Bibliothek in Ihrer App geladen wird, hängt davon ab, welcher Bootstrap-Loader verwendet wird. Wenn in Ihrer Anwendung der dynamische Bibliotheksimport verwendet wird, können Sie die erforderlichen Bibliotheken zur Laufzeit laden. Verwenden Sie dazu den Operator await, um importLibrary() aufzurufen, wie hier gezeigt:

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

Wenn Ihre App das Tag zum direkten Laden von Scripts verwendet, 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 Anleitungen, die Ihnen bei der Migration Ihrer Apps zur neuesten Version der Places API helfen: