Migration – Übersicht

Entwickler im Europäischen Wirtschaftsraum (EWR)

In diesem Leitfaden werden die wichtigsten Unterschiede zwischen dem Legacy-Places Service und der neuen Place-Klasse hervorgehoben. Das Upgrade auf die Place-Klasse bietet erhebliche Vorteile, darunter eine verbesserte Leistung und ein neues Preismodell. Damit Sie Places optimal nutzen 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 so hoch ist, dass Sie in die zweite Preisstufe 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, so früh wie möglich im Monat zu den neuen APIs in der Produktion zu wechseln. So erreichen Sie im Migrationsmonat die kostengünstigsten monatlichen Preisstufen. Informationen zu den Preisstufen finden Sie auf der Preisseite und in den FAQs zu den 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 (Legacy) Place (New)
Für Methoden ist ein Callback erforderlich, um das Ergebnisobjekt und google.maps.places.PlacesServiceStatus Antwort zu verarbeiten. Verwendet Promise-Objekte und funktioniert asynchron.
Für Methoden ist eine PlacesServiceStatus-Prüfung erforderlich. Keine Statusprüfung erforderlich, Standardfehlerbehandlung kann verwendet werden.
Datenfelder für Orte werden im Snake-Case-Format formatiert. Datenfelder für Orte werden im Camel-Case-Format formatiert.
Beschränkt auf eine feste Anzahl von Ortstypen und Datenfeldern für Orte. Bietet eine erweiterte Auswahl an regelmäßig aktualisierten Ortstypen und Datenfeldern für Orte.

API-spezifische Änderungen

Die Place-Klasse bietet eine API zum Verwenden der Places Library und unterstützt moderne Nutzungsmuster wie Promise-Objekte. Die Place-Klasse stellt dieselben Datenfelder und Ortstypen wie der Legacy-Places Service zur Verfügung und enthält viele neue Werte für Datenfelder und Ortstypen.

In dieser Tabelle sehen Sie, wie die Funktionen des Places Service denen der Place-Klasse zugeordnet sind:

Places Service (Legacy) Place Class (New)
Datenfelder für Orte 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 Ihre App die Places Library lädt, hängt davon ab, welcher Bootstrap-Loader verwendet wird. Wenn Ihre App den dynamischen Bibliotheksimport verwendet, können Sie die erforderlichen Bibliotheken zur Laufzeit laden, indem Sie den Operator await verwenden, 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 Loader-Script 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: