Szczegóły miejsca (nowość)

Aby uzyskać więcej informacji o konkretnym obiekcie lub punkcie zainteresowania, możesz użyć jego identyfikatora miejsca i przesłać żądanie Szczegóły miejsca (nowe). Szczegóły miejsca (Nowy) zwracają bardziej kompleksowe informacje o wybranym miejscu, takie jak pełny adres, numer telefonu, ocena 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);

Aby uzyskać szczegóły miejsca, wywołaj funkcję PlacesClient.fetchPlace() i przekaż obiekt FetchPlaceRequest zawierający identyfikator miejscalistę pól, a także dowolne parametry opcjonalne:

// 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 „Informacje o miejscu (nowe)”,

Zapytanie Szczegóły miejsca (nowe) zwraca dane w postaci obiektu Place, który zawiera tylko pola określone za pomocą listy field. Wyniki danych o miejscach nie mogą być puste, dlatego zwracane są tylko wyniki z danymi (np. jeśli żądane miejsce nie ma zdjęć, pole zdjęć nie będzie obecne w wyniku).

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

Wymagane parametry

Wymagane parametry w przypadku FetchPlaceRequest:

Parametry opcjonalne

Parametry opcjonalne w FetchPlaceRequest:

  • Kod regionu

    Kod regionu użyty do sformatowania odpowiedzi, podany jako 2-znakowy kod CLDR. Nie ma wartości domyślnej.

    Jeśli nazwa kraju w polu Place.Field.FORMATTED_ADDRESS w odpowiedzi pasuje do wartości w polu regionCode, kod kraju jest pomijany w polu Place.Field.FORMATTED_ADDRESS.

    Większość kodów CLDR jest identyczna z kodami ISO 3166-1, z niektórymi wyjątkami. Na przykład ccTLD Wielkiej Brytanii to „uk” (.co.uk), a jej kod ISO 3166-1 to „gb” (technicznie dla podmiotu „Zjednoczone Królestwo Wielkiej Brytanii i Irlandii Północnej”). Parametr może wpływać na wyniki w zależności od obowiązujących przepisów.

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

  • Token sesji

    Tokeny sesji to tworzone przez użytkownika ciągi znaków, które śledzą wywołania funkcji Autouzupełnianie (nowa) jako „sesje”. Autouzupełnianie (nowa wersja) używa tokenów sesji, aby grupować fazy zapytania i wyboru miejsca w autouzupełnianiu w ramach jednej sesji na potrzeby rozliczeń. Tokeny sesji są przekazywane do wywołań Szczegóły miejsca (Nowe), które następują po wywołaniach Autouzupełnianie (Nowe). Więcej informacji znajdziesz w artykule Tokeny sesji.

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

Przykład informacji o miejscu

W tym przykładzie żądamy pól ID, DISPLAY_NAMEFORMATTED_ADDRESS dla 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.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);