Szczegóły miejsca (nowość)

Możesz poprosić o więcej szczegółów na temat konkretnego obiektu lub ciekawego miejsca, używając jego identyfikatora miejsca i przesyłając prośbę o szczegóły miejsca (nowość). Szczegóły miejsca (nowe) zwracają bardziej szczegółowe informacje o wybranym miejscu, takie jak pełny adres, numer telefonu, oceny i opinie użytkowników.

Identyfikator miejsca można uzyskać na wiele sposobów. Możesz użyć:

Prośby o szczegóły miejsca (nowe)

Możesz poprosić o szczegółowe informacje o miejscu, wywołując metodę PlacesClient.fetchPlace() i przekazując obiekt FetchPlaceRequest zawierający identyfikator miejsca i listę pól, a także dowolne opcjonalne parametry:

// 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);

Odpowiedzi na temat szczegółów miejsca (nowe)

Szczegóły miejsca (nowe) zwracają dane w postaci obiektu Place, który zawiera tylko pola żądane za pomocą listy pól. Wyniki z danymi miejsc nie mogą być puste, więc zwracane są tylko wyniki miejsc z danymi (jeśli na przykład żądane miejsce nie ma zdjęć, nie będzie w nim pola zdjęć).

Aby uzyskać dostęp do pól danych, wywołaj odpowiednią metodę. Na przykład aby uzyskać dostęp do nazwy miejsca, wywołaj getName().

Wymagane parametry

Wymagane parametry parametru FetchPlaceRequest:

Parametry opcjonalne

Opcjonalne parametry FetchPlaceRequest:

  • Kod regionu

    Kod regionu używany do formatowania odpowiedzi podany jako wartość dwuznakowego kodu CLDR. Nie ma wartości domyślnej.

    Jeśli nazwa kraju w polu Place.Field.ADDRESS w odpowiedzi jest zgodna z nazwą regionCode, kod kraju jest pomijany w polu Place.Field.ADDRESS.

    Większość kodów CLDR jest identyczna z kodami ISO 3166-1 z kilkoma wyjątkami. Na przykład domena ccTLD Wielkiej Brytanii to „uk” (.co.uk), a kod ISO 3166-1 to „gb” (technicznie dla podmiotu „Wielka Brytania i Irlandia Północna”). Ten parametr może wpływać na wyniki w zależności od obowiązującego prawa.

    Aby ustawić parametr kodu regionu, wywołaj metodę setRegionCode() podczas tworzenia obiektu FetchPlaceRequest.

  • Token sesji

    Tokeny sesji to ciągi wygenerowane przez użytkownika, które śledzą wywołania autouzupełniania (nowe) jako „sesje”. Autouzupełnianie (nowość) korzysta z tokenów sesji do grupowania zapytania i umieszczania etapów wyboru wyszukiwania autouzupełniania użytkownika w oddzielnej sesji na potrzeby rozliczeń. Tokeny sesji są przekazywane do wywołań funkcji szczegółów miejsca (nowych) po wywołaniach autouzupełniania (nowych). Więcej informacji znajdziesz w artykule o tokenach sesji.

    Aby ustawić parametr tokena sesji, podczas tworzenia obiektu FetchPlaceRequest wywołaj metodę setSessionToken().

Przykład strony Szczegóły miejsca

W tym przykładzie żądamy pól ID, NAME i ADDRESS w Empire State Building w Nowym Jorku.

// 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.NAME, Place.Field.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);