장소 세부정보 (신규)

플랫폼 선택: Android iOS JavaScript 웹 서비스

장소 ID를 사용하고 장소 세부정보 (신규) 요청을 실행하여 특정 시설이나 관심 장소에 관한 세부정보를 요청할 수 있습니다. Place Details (New)는 전체 주소, 전화번호, 사용자 평점, 리뷰 등 표시된 장소에 관한 더 포괄적인 정보를 반환합니다.

장소 ID를 가져오는 방법에는 여러 가지가 있습니다. 이 옵션은 다음과 같습니다.

Place Details (New) 요청

PlacesClient.fetchPlace()를 호출하고 장소 ID필드 목록이 포함된 FetchPlaceRequest 객체와 선택적 매개변수를 전달하여 장소 세부정보를 요청할 수 있습니다.

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

Place Details (New) 응답

Place Details (New)는 Place 객체의 형식으로 데이터를 반환하며 여기에는 필드 목록을 사용하여 요청한 필드만 포함됩니다. 장소 데이터 결과는 비워 둘 수 없으므로 데이터가 있는 장소 결과만 반환됩니다. 예를 들어 요청된 장소에 사진이 없으면 결과에 사진 필드가 표시되지 않습니다.

데이터 필드에 액세스하려면 해당하는 메서드를 호출합니다. 예를 들어 장소 이름에 액세스하려면 getName()를 호출합니다.

필수 매개변수

FetchPlaceRequest의 필수 매개변수는 다음과 같습니다.

선택적 매개변수

FetchPlaceRequest의 선택적 매개변수는 다음과 같습니다.

  • 리전 코드

    응답 형식을 지정하는 데 사용되는 지역 코드로, 2자리 CLDR 코드 값으로 지정됩니다. 기본값은 없습니다.

    응답의 Place.Field.ADDRESS 필드의 국가 이름이 regionCode와 일치하면 Place.Field.ADDRESS에서 국가 코드가 생략됩니다.

    대부분의 CLDR 코드는 ISO 3166-1 코드와 동일하지만 일부 눈에 띄는 예외가 있습니다. 예를 들어 영국의 ccTLD는 'uk' (.co.uk)이지만 ISO 3166-1 코드는 'gb' (기술적으로 '영국 및 북아일랜드' 엔티티)입니다. 매개변수는 관련 법률에 따라 결과에 영향을 미칠 수 있습니다.

    지역 코드 매개변수를 설정하려면 FetchPlaceRequest 객체를 빌드할 때 setRegionCode() 메서드를 호출합니다.

  • 세션 토큰

    세션 토큰은 자동 완성 (신규) 호출을 '세션'으로 추적하는 사용자 생성 문자열입니다. Autocomplete (신규)는 세션 토큰을 사용하여 사용자 자동 완성 검색의 쿼리 및 장소 선택 단계를 결제 목적의 개별 세션으로 그룹화합니다. 세션 토큰은 Autocomplete (신규) 호출 이후에 나오는 Place Details (New) 호출에 전달됩니다. 자세한 내용은 세션 토큰을 참조하세요.

    세션 토큰 매개변수를 설정하려면 FetchPlaceRequest 객체를 빌드할 때 setSessionToken() 메서드를 호출합니다.

장소 세부정보 예

다음 예에서는 뉴욕시 엠파이어 스테이트 빌딩의 ID, NAME, ADDRESS 필드를 요청합니다.

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