Wenn Sie weitere Informationen zu einem bestimmten Unternehmen oder einem bestimmten Punkt von Interesse anfordern möchten, verwenden Sie die Place ID und stellen Sie eine Anfrage vom Typ „Place Details (New)“. Mit „Ortsdetails (neu)“ erhalten Sie umfassendere Informationen zum angegebenen Ort, 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 für „Place Details (New)“
Sie können Details zu einem Ort anfordern, indem Sie PlacesClient.fetchPlace()
aufrufen und ein FetchPlaceRequest
-Objekt mit einer Orts-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 für „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 textbasierte Kennung, die einen Ort eindeutig identifiziert und von einer Text Search (Neu), einer Nearby Search (Neu) oder einer Autocomplete (Neu) 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.Feldlisten sind eine gute Designpraxis, um zu verhindern, dass unnötige Daten angefordert werden. Dadurch lassen sich unnötige Verarbeitungszeiten und Abrechnungskosten 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 (New)“-Aufrufe als „Sitzungen“ erfasst werden. Bei der Funktion „Autocomplete (Neu)“ werden Sitzungstokens verwendet, um die Abfrage- und Ortsauswahlphasen einer Nutzerabfrage mit automatischer Vervollständigung zu Abrechnungszwecken in einer einzelnen Sitzung zu gruppieren. 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 Parameter für das Sitzungstoken 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 City 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);