Welche Funktionen des Places SDK for Android in Ihrer App verfügbar sind, hängt von einer Kombination aus der SDK-Versionsnummer (z.B. 3.5.0), die Sie in der App-Konfiguration angeben, den APIs, die mit Ihrem API-Schlüssel aktiviert sind, und der Art und Weise ab, wie Sie Ihre App initialisieren. In dieser Anleitung werden die Unterschiede zwischen den Versionen erläutert und beschrieben, wie Sie auswählen, welche Versionen in Ihrer App aktiviert werden.
SDK-Versionsnummern
Die Versionsnummer des SDK, die Sie in der build.gradle-Datei auf App-Ebene angeben, bestimmt, ob Ihre App auf Funktionen zugreifen kann, die in einer bestimmten Version hinzugefügt wurden. „Autocomplete (New)“ ist beispielsweise nur in der SDK-Version 3.5.0 oder höher verfügbar.
Weitere Informationen zu den Änderungen in den einzelnen SDK-Versionen finden Sie in den Versionshinweisen zum Places SDK für Android.
Places API-Versionen für das Places SDK for Android
Sie müssen nicht nur eine SDK-Versionsnummer angeben, sondern auch den Places API-Dienst auswählen, den das SDK in der Google Cloud Console aufruft: entweder „Places API“ oder „Places API (neu)“. Zusammen mit der SDK-Versionsnummer bestimmt der ausgewählte API-Dienst, welche Version bestimmter Funktionen in Ihrer App verfügbar ist, z. B. „Autocomplete“ oder „Autocomplete (New)“. Sie können zwar nur eine SDK-Versionsnummer angeben, aber sowohl die Places API als auch die Places API (New) gleichzeitig für Ihren API-Schlüssel aktivieren. Anschließend können Sie über die Methode, mit der Sie das SDK in Ihrer App initialisieren, auswählen, welchen Dienst das SDK aufruft. In den meisten Fällen sollten Sie jedoch die Places API (New) aktivieren und die (New)-Versionen der SDK-Funktionen in Ihrer App verwenden.
SDK-Version und API-Dienste auswählen
So wählen Sie aus, welche SDK-Funktionen in Ihrer App verfügbar sind:
- Aktivieren Sie in Ihrem Google Cloud-Projekt die Places API, die Places API (neu) oder beide. Weitere Informationen finden Sie unter APIs aktivieren.
- Aktivieren Sie in den API-Schlüsseleinschränkungen die Places API, die Places API (neu) oder beide. Weitere Informationen finden Sie unter API-Schlüssel einschränken.
Geben Sie in der Datei „build.gradle“ auf App-Ebene eine Versionsnummer an. Weitere Informationen finden Sie unter Installation.
Initialisieren Sie Ihre App, indem Sie entweder die Methode
Places.initializeWithNewPlacesApiEnabled()
oder die MethodePlaces.initialize()
aufrufen.
Weitere Informationen zur Auswahl des Places API-Dienstes finden Sie unter Google Cloud-Projekt einrichten.
In den einzelnen Versionen verfügbare SDK-Funktionen
In der folgenden Tabelle sehen Sie, welche SDK- und API-Versionen für die einzelnen SDK-Funktionen erforderlich sind:
Funktion | Places API für API-Schlüssel aktiviert | Initialisierungsmethode | Mindest-SDK-Version |
---|---|---|---|
Automatische Vervollständigung (neu) | Places API (New) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Ortsdetails (neu) | Places API (New) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Nearby Search (Neu) | Places API (New) | initializeWithNewPlacesApiEnabled() |
3.5.0 |
Ortsfotos (neu) | Places API (New) | initializeWithNewPlacesApiEnabled() |
3.4.0 |
Text Search (Neu) | Places API (New) | initializeWithNewPlacesApiEnabled() |
3.3.0 |
Place Autocomplete | Places API | initialize() |
|
Find Current Place | Places API | initialize() |
|
Place Details | Places API | initialize() |
|
Ortsfotos | Places API | initialize() |
Überlegungen bei der Auswahl der zu aktivierenden Versionen
Folgende Aspekte können Ihnen bei der Entscheidung helfen, welche Version Sie auswählen:
- Wenn Sie ein neuer Kunde sind und gerade erst mit dem Places SDK for Android beginnen, beginnen Sie mit der Places API (neu) und dem neuen SDK.
- Wenn Sie bereits Kunde sind, können Sie das vorhandene SDK weiterhin verwenden. Wenn Sie jedoch die Leistungsverbesserungen und Funktionserweiterungen des Places SDK for Android (New) nutzen möchten, sollten Sie das neue SDK verwenden. Für die Umstellung auf das neue SDK ist keine Migration erforderlich. Folgen Sie einfach der Anleitung unter SDK-Version und API-Dienste auswählen.
- Im Places SDK for Android (neu) sind Sitzungstokens ab Version 3.5.0 verfügbar. Weitere Informationen finden Sie unter Sitzungstokens.
- Aufrufe über Place Autocomplete-Widgets werden immer an Place Autocomplete und nicht an „Place Autocomplete (New)“ gesendet. Widgetaufrufe sind von der Initialisierungsmethode nicht betroffen.
- Place Photos (New) gibt nur einen URI zu einem Bitmap-Bild zurück, während Place Photos nur ein Bitmap-Bild zurückgibt.
- Current Place ist nur im Places SDK for Android verfügbar, nicht im Places SDK for Android (neu).
Verbesserungen im Places SDK for Android (neu)
In diesem Abschnitt werden die wichtigsten Funktionen beschrieben, die dem Places SDK for Android hinzugefügt wurden.
Auf der Google Cloud-Standardplattform implementiert
Das Places SDK for Android (New) wird in der Dienstinfrastruktur in Google Cloud implementiert. Diese Implementierung sorgt für eine sicherere und vertrauenswürdigere Plattform. Dieses Standarddesign sorgt für Einheitlichkeit bei den SDKs und erhöht die Effizienz der Entwicklung mit dem Places SDK for Android (neu).
Verbesserte Leistung
Das Places SDK for Android (New) bietet eine verbesserte Leistung. Daher lohnt es sich, Apps zu ersetzen, in denen das vorhandene SDK verwendet wird.
Neue Funktionen
Das Places SDK for Android (New) enthält die neuesten Versionen aller SDK-Funktionen:
- Automatische Vervollständigung (neu)
- Ortsdetails (neu)
- Nearby Search (Neu)
- Ortsfotos (neu)
- Text Search (Neu)
Neuer Textsuchdienst
Bei Verwendung von Text Search (New) werden Informationen zu verschiedenen Orten auf Grundlage eines Textstrings zurückgegeben, z. B. „Pizza in München“, „Schuhgeschäfte in der Nähe von Hamburg“ oder „Hauptstraße 123“. Der Dienst gibt eine Liste mit Orten zurück, die dem Textstring und ggf. der festgelegten Standortgewichtung entsprechen.
Neue Antwortdaten für „Place Details (New)“ und „Place Photos (New)“ hinzugefügt
Place Details (Neu) enthält jetzt die neue Klasse Rezension im Antwortobjekt
Place
. Die Klasse Place enthält die neue MethodegetReviews()
, die dieses Feld unterstützt. Rufen SiegetReviews()
auf, um bis zu fünf Rezensionen für einen Ort zurückzugeben.Mit Ortsfoto (neu) wird der
PhotoMetadata
-Klasse dasAuthorAttributions
hinzugefügt.AuthorAttributions
enthält einList
mitAuthorAttribution
-Objekten.
Neue URI-Antwort für „Ortsfotos“ (neu) hinzugefügt
Mit der Option Foto platzieren (neu) können Sie jetzt einen URI zu einer Bild-Bitmap zurückgeben. Bisher konnte nur die Bild-Bitmap selbst zurückgegeben werden.
Transparente Kosten
Mit dem Places SDK for Android (neu) sind die Preise vereinfacht, sodass Sie nur für die Daten bezahlen, die Sie verwenden. Die vereinfachten Preise werden mithilfe von Feldlisten implementiert, die auch als Feldmasken bezeichnet werden.
Bei „Place Details“ und „Text Search“ können Sie mithilfe von Feldlisten festlegen, welche Felder in der Antwort zurückgegeben werden sollen. Ihnen werden dann nur die angeforderten Daten in Rechnung gestellt. Mit einer Feldliste lässt sich verhindern, dass unnötige Daten angefordert werden, was wiederum hilft, unnötige Verarbeitungszeiten und Gebühren zu vermeiden.
Ausführliche Preisinformationen für beide SDKs finden Sie unter Nutzung und Abrechnung.
Erweiterte Ortstypen
Das neue SDK fügt die in der folgenden Tabelle aufgeführten Ortstypen hinzu. Diese Typen werden im Rahmen der Antwort „Place Details“ und „Text Search“ zurückgegeben. Sie können diese neuen Typen und die vorhandenen Typen auch in einer Suche mit der Textsuche verwenden. Die neuen Typen sind in Tabelle A enthalten.
Typ | |||
---|---|---|---|
american_restaurant | discount_store | ice_cream_shop | sandwich_shop |
amusement_center | dog_park | indian_restaurant | school_district |
athletic_field | electric_vehicle_charging_station | indonesian_restaurant | seafood_restaurant |
auto_parts_store | event_venue | italian_restaurant | ski_resort |
banquet_hall | extended_stay_hotel | japanese_restaurant | spanish_restaurant |
barbecue_restaurant | Bauernhof | korean_restaurant | sporting_goods_store |
barber_shop | Agrotourismus | lebanese_restaurant | sports_club |
bed_and_breakfast | fast_food_restaurant | Marina | sports_complex |
brazilian_restaurant | ferry_terminal | Markt | steak_house |
breakfast_restaurant | fitness_center | medical_lab | sushi_restaurant |
brunch_restaurant | french_restaurant | mediterranean_restaurant | swimming_pool |
bus_stop | gift_shop | mexican_restaurant | anpassen |
camping_cabin | golf_course | middle_eastern_restaurant | telecommunications_service_provider |
cell_phone_store | greek_restaurant | Motel | thai_restaurant |
child_care_agency | grocery_store | national_park | transit_depot |
chinese_restaurant | guest_house | park_and_ride | truck_stop |
coffee_shop | hair_salon | performing_arts_theater | turkish_restaurant |
community_center | hamburger_restaurant | pizza_restaurant | vegan_restaurant |
Berater | Hubschrauberlandeplatz | playground | vegetarian_restaurant |
convention_center | hiking_area | Vorschule | vietnamese_restaurant |
Hütte | historical_landmark | private_guest_room | visitor_center |
courier_service | home_improvement_store | ramen_restaurant | wedding_venue |
cultural_center | Jugendherberge | resort_hotel | Großhändler |
dental_clinic | Hotel | rest_stop |
Neben diesen neuen Typen wurden in der Places API (neu) die folgenden Typen aus Tabelle 2 der Places API in Tabelle A der Places API (neu) verschoben. Sie können also jetzt folgende Typen in Suchanfragen verwenden:
country
administrative_area_level_1
administrative_area_level_2
postal_code
locality