Ortsdetails (neu)

Plattform auswählen: Android iOS JavaScript Webdienst

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:

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 dem regionCode übereinstimmt, wird der Ländercode aus Place.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 Methode setRegionCode() 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 das FetchPlaceRequest-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);