Das Places SDK for Android unterstützt Ortsdetails (Legacy). Wenn Sie mit dem Places SDK for Android (Legacy) vertraut sind, werden durch Place Details (New) die folgenden Änderungen vorgenommen:
Es wird ein neues Preismodell verwendet. Preisinformationen für alle APIs finden Sie unter Places SDK for Android (New).
Sie müssen Ihre App initialisieren, indem Sie die Methode
Places.initializeWithNewPlacesApiEnabled()
aufrufen. Weitere Informationen zum Auswählen des Places API-Dienstes finden Sie unter Google Cloud-Projekt einrichten.Die Maskierung von Feldern ist erforderlich. Sie müssen angeben, welche Felder in der Antwort zurückgegeben werden sollen. Es gibt keine Standardliste der zurückgegebenen Felder. Wenn Sie diese Liste weglassen, geben die Methoden einen Fehler zurück.
In den folgenden Abschnitten werden weitere Änderungen beschrieben.
Auf neue Ortstypen zugreifen
Jedem Ort können ein oder mehrere type-Werte zugeordnet sein. In Version 3.3.0 und höher des Places SDK for Android wurden viele neue Typwerte hinzugefügt. Eine vollständige Liste finden Sie unter Erweiterte Ortstypen.
Die Methode Place.getPlaceTypes()
gibt die Typwerte als Liste von Stringwerten zurück. Die zurückgegebenen Werte hängen von Ihrer Version des Places SDK for Android ab:
Places SDK for Android (New): Gibt die in Tabelle A und Tabelle B unter Orte – Typen (Neu) definierten Strings zurück, einschließlich aller in Version 3.3.0 hinzugefügten Ortstypen.
Places SDK for Android: Gibt die von
Place.Types
definierten Enums zurück, die nicht die neuen Typen enthalten, die in Version 3.3.0 und höher hinzugefügt wurden.
Auf Ortsrezensionen zugreifen
Mit dem Places SDK for Android (New) wird die Klasse Review
hinzugefügt, die eine Rezension eines Orts enthält. Das Place
-Objekt kann bis zu fünf Rezensionen enthalten.
Die Klasse Review
kann auch eine Quellenangabe und eine Autorenangabe enthalten. Wenn Sie die Rezension in Ihrer App anzeigen, müssen Sie auch alle Quellen- oder Autorenangaben einblenden. Weitere Informationen finden Sie unter Rezension anzeigen.
Weitere Informationen finden Sie in der Dokumentation zu Quellenangaben.
Sprachcode für Ortsnamen abrufen
Im Places SDK for Android (Legacy) gibt die Methode Place.getName()
einen String mit dem Namen eines Orts zurück. Wenn Sie das Place
-Objekt mit dem Ortsnamen füllen möchten, müssen Sie Place.Field.DISPLAY_NAME
in die Feldliste der Place Details-Anfrage aufnehmen.
Das Place
-Objekt enthält jetzt den Sprachcode für den Namensstring. Damit das Place
-Objekt mit dem Sprachcode gefüllt werden kann, müssen Sie Folgendes tun:
Fügen Sie
Place.Field.DISPLAY_NAME
in die Feldliste der Anfrage ein. Mit diesem Wert wird die Antwort so konfiguriert, dass sowohl der Ortsname als auch der Sprachcode imPlace
-Objekt enthalten sind.Rufen Sie
PlacesClient.fetchPlace()
an.PlacesClient.findCurrentPlace()
unterstützt das Feld für den Sprachcode nicht.Verwenden Sie die Methode
Place.getNameLanguageCode()
, um auf das Feld für den Sprachcode imPlace
-Objekt zuzugreifen.
Regionscode festlegen
Mit dem Places SDK for Android (New) wird der Anfrageparameter „region code“ zu Place Details hinzugefügt. Der Regionscode wird verwendet, um die Antwort zu formatieren. Er wird als zweistelliger CLDR-Code angegeben. Dieser Parameter kann sich auch auf die Suchergebnisse auswirken. Es gibt keinen Standardwert. Sie müssen das neue SDK aktivieren, um den Ländercode festzulegen.
Wenn der Ländername des Adressfelds in der Antwort mit dem Regionscode übereinstimmt, wird der Ländercode aus der Adresse entfernt.
Die meisten CLDR-Codes sind mit den ISO 3166-1-Codes identisch. Es gibt jedoch einige Ausnahmen. So lautet beispielsweise die ccTLD des Vereinigten Königreichs „uk“ (.co.uk), der ISO 3166-1-Code dagegen „gb“ (technisch für das Land „Vereinigtes Königreich von Großbritannien und Nordirland“). Der Parameter kann sich je nach anwendbarem Recht auf die Ergebnisse auswirken.
Beispielanfrage
Ein vollständiges Beispiel finden Sie unter Place Details (New).