Wenn Sie weitere Details zu einem bestimmten Unternehmen oder einer bestimmten Sehenswürdigkeit anfordern möchten, verwenden Sie die Place ID und stellen Sie eine Place Details (New)-Anfrage. Mit „Ortsdetails (neu)“ werden umfassendere Informationen zum angegebenen Ort zurückgegeben, z. B. die vollständige Adresse, Telefonnummer, Nutzerbewertung und Rezensionen.
Es gibt viele Möglichkeiten, eine Orts-ID zu erhalten. Sie können Folgendes angeben:
Anfragen vom Typ „Place Details (New)“
Sie können Details zum Ort anfordern, indem Sie PlacesClient.fetchPlace()
aufrufen und ein FetchPlaceRequest
-Objekt mit einer Place ID und einer Feldliste sowie alle optionalen Parameter übergeben:
// Define a place ID.
final String placeId = "INSERT_PLACE_ID_HERE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList("INSERT_PLACE_FIELDS_HERE");
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);
Antworten von „Place Details (New)“
„Place Details (New)“ gibt Daten in Form eines Place
-Objekts zurück, das nur die Felder enthält, die Sie mit der Feldliste angefordert haben. Ergebnisse für „Place Details“-Anfragen dürfen nicht leer sein. Daher werden nur Ergebnisse mit Daten zurückgegeben. Wenn für einen angeforderten Ort beispielsweise keine Fotos vorhanden sind, ist das Feld „photos“ nicht im Ergebnis enthalten.
Rufen Sie die entsprechende Methode auf, um auf Datenfelder zuzugreifen.
Wenn Sie beispielsweise auf den Ortsnamen zugreifen möchten, rufen Sie getName()
auf.
Erforderliche Parameter
Die erforderlichen Parameter für FetchPlaceRequest
sind:
-
Orts-ID
Eine Text-ID, über die ein Ort eindeutig identifiziert wird, die von einer Text Search (New)-, Nearby Search (New)- oder Autocomplete (New)-Anfrage zurückgegeben wird. Weitere Informationen zu Orts-IDs finden Sie in der Übersicht zu Orts-IDs.
-
Feldliste
Wenn Sie einen Ort anfordern, müssen Sie angeben, welche Ortsdaten zurückgegeben werden sollen. Dazu übergeben Sie eine Liste von
Place.Field
-Werten, in denen die zurückzugebenden Daten angegeben sind. Es gibt keine Standardliste der zurückgegebenen Felder in der Antwort.Mithilfe von Feldlisten lässt sich verhindern, dass unnötige Daten angefordert werden, was wiederum hilft, unnötige Verarbeitungszeiten und Gebühren zu vermeiden.Diese Liste ist ein wichtiger Faktor, da sie sich auf die Kosten für jede Anfrage auswirkt. Weitere Informationen finden Sie unter Nutzung und Abrechnung.
Geben Sie mindestens eines der folgenden Felder an:
Die folgenden Felder lösen die SKU Place Details (IDs Only) aus:
Place.Field.DISPLAY_NAME
,Place.Field.ID
,Place.Field.PHOTO_METADATAS
,Place.Field.RESOURCE_NAME
Die folgenden Felder lösen die SKU Place Details (Location Only) aus:
Place.Field.ADDRESS_COMPONENTS
,ADR_FORMAT_ADDRESS
,Place.Field.FORMATTED_ADDRESS
,Place.Field.LOCATION
,Place.Field.PLUS_CODE
,Place.Field.SHORT_FORMATTED_ADDRESS
,Place.Field.TYPES
,Place.Field.VIEWPORT
Die folgenden Felder lösen die SKU Place Details (Basic) aus:
Place.Field.ACCESSIBILITY_OPTIONS
,Place.Field.BUSINESS_STATUS
,Place.Field.GOOGLE_MAPS_URI
,Place.Field.ICON_BACKGROUND_COLOR
,Place.Field.ICON_MASK_URL
,Place.Field.PRIMARY_TYPE
,Place.Field.PRIMARY_TYPE_DISPLAY_NAME
,Place.Field.SUB_DESTINATIONS
,Place.Field.UTC_OFFSET
Die folgenden Felder lösen die SKU Place Details (Advanced) aus:
Place.Field.CURRENT_OPENING_HOURS
,Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_PHONE_NUMBER
,Place.Field.NATIONAL_PHONE_NUMBER
Place.Field.OPENING_HOURS
,Place.Field.PRICE_LEVEL
,Place.Field.RATING
,Place.Field.SECONDARY_OPENING_HOURS
,Place.Field.USER_RATING_COUNT
Place.Field.WEBSITE_URI
Die folgenden Felder lösen die SKU Place Details (Preferred)aus:
Place.Field.ALLOWS_DOGS
,Place.Field.CURBSIDE_PICKUP
,Place.Field.DELIVERY
,Place.Field.DINE_IN
,Place.Field.EDITORIAL_SUMMARY
,Place.Field.EV_CHARGE_OPTIONS
,Place.Field.FUEL_OPTIONS
,Place.Field.GOOD_FOR_CHILDREN
,Place.Field.GOOD_FOR_GROUPS
,Place.Field.GOOD_FOR_WATCHING_SPORTS
,Place.Field.LIVE_MUSIC
,Place.Field.MENU_FOR_CHILDREN
,Place.Field.OUTDOOR_SEATING
,Place.Field.PARKING_OPTIONS
,Place.Field.PAYMENT_OPTIONS
,Place.Field.RESERVABLE
,Place.Field.RESTROOM
,Place.Field.REVIEWS
,Place.Field.SERVES_BEER
,Place.Field.SERVES_BREAKFAST
,Place.Field.SERVES_BRUNCH
,Place.Field.SERVES_COCKTAILS
,Place.Field.SERVES_COFFEE
,Place.Field.SERVES_DESSERT
,Place.Field.SERVES_DINNER
,Place.Field.SERVES_LUNCH
,Place.Field.SERVES_VEGETARIAN_FOOD
,Place.Field.SERVES_WINE
,Place.Field.TAKEOUT
Optionale Parameter
Die optionalen Parameter für FetchPlaceRequest
sind:
Regionscode
Der Regionscode, der zum Formatieren der Antwort verwendet wird. Er wird als zweistelliger CLDR-Code angegeben. Es gibt keinen Standardwert.
Wenn der Ländername des Felds
Place.Field.FORMATTED_ADDRESS
in der Antwort mit demregionCode
übereinstimmt, wird der Ländercode ausPlace.Field.FORMATTED_ADDRESS
entfernt.Die meisten CLDR-Codes entsprechen den ISO 3166-1-Codes, mit einigen Ausnahmen. So lautet beispielsweise die ccTLD des Vereinigten Königreichs „uk“ (.co.uk), der ISO 3166-1-Code dagegen „gb“ (technisch für die Entität „Vereinigtes Königreich von Großbritannien und Nordirland“). Der Parameter kann sich auf die Ergebnisse auswirken, die gemäß anwendbarem Recht angezeigt werden.
Wenn Sie den Parameter „Regioncode“ festlegen möchten, rufen Sie beim Erstellen des
FetchPlaceRequest
-Objekts die MethodesetRegionCode()
auf.-
Sitzungstoken
Sitzungstokens sind von Nutzern generierte Strings, mit denen Autocomplete-Aufrufe vom Typ „Neu“ als „Sitzungen“ erfasst werden. Bei „Autocomplete (New)“ werden Sitzungstokens verwendet, um die Abfrage- und Ortsauswahlphasen einer Nutzeranfrage zur automatischen Vervollständigung zu Abrechnungszwecken zu einer separaten Sitzung zusammenzufassen. Sitzungstokens werden an „Place Details (New)“-Aufrufe übergeben, die auf „Autocomplete (New)“-Aufrufe folgen. Weitere Informationen finden Sie unter Sitzungstokens.
Rufe die Methode
setSessionToken()
auf, wenn du dasFetchPlaceRequest
-Objekt erstellst, um den Sitzungstoken-Parameter festzulegen.
Beispiel für „Place Details“
Im folgenden Beispiel werden die Felder ID
, DISPLAY_NAME
und FORMATTED_ADDRESS
für das Empire State Building in New York angefordert.
// Define a place ID.
final String placeId = "ChIJaXQRs6lZwokRY6EFpJnhNNE";
// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME, Place.Field.FORMATTED_ADDRESS);
// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);
// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);