Chi tiết địa điểm (Mới)

Chọn nền tảng: Android iOS JavaScript Dịch vụ web

Bạn có thể yêu cầu thêm thông tin chi tiết về một cơ sở hoặc địa điểm yêu thích cụ thể bằng cách sử dụng mã địa điểm và đưa ra yêu cầu về Thông tin chi tiết về địa điểm (Mới). Chi tiết địa điểm (Mới) trả về thông tin toàn diện hơn về địa điểm được chỉ định, chẳng hạn như địa chỉ đầy đủ, số điện thoại, xếp hạng và bài đánh giá của người dùng.

Có nhiều cách để lấy mã địa điểm. Bạn có thể sử dụng:

Yêu cầu Chi tiết địa điểm (Mới)

Bạn có thể yêu cầu thông tin chi tiết về địa điểm bằng cách gọi PlacesClient.fetchPlace() và truyền đối tượng FetchPlaceRequest chứa mã địa điểmdanh sách trường, cũng như tham số không bắt buộc bất kỳ:

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

Câu trả lời cho Thông tin chi tiết về địa điểm (Mới)

Chi tiết địa điểm (Mới) trả về dữ liệu dưới dạng đối tượng Place, chỉ bao gồm các trường mà bạn đã yêu cầu bằng cách sử dụng danh sách trường. Không được để trống kết quả dữ liệu địa điểm, vì vậy, chỉ kết quả về địa điểm có dữ liệu mới được trả về (ví dụ: nếu địa điểm được yêu cầu không có ảnh, thì trường ảnh sẽ không xuất hiện trong kết quả).

Để truy cập vào các trường dữ liệu, hãy gọi phương thức tương ứng. Ví dụ: để truy cập tên địa điểm, hãy gọi getName().

Thông số bắt buộc

Các tham số bắt buộc cho FetchPlaceRequest là:

Thông số tùy chọn

Các tham số không bắt buộc cho FetchPlaceRequest là:

  • Mã vùng

    Mã vùng dùng để định dạng phản hồi, được chỉ định dưới dạng giá trị mã CLDR hai ký tự. Không có giá trị mặc định.

    Nếu tên quốc gia của trường Place.Field.ADDRESS trong phản hồi khớp với regionCode, thì mã quốc gia sẽ bị bỏ qua Place.Field.ADDRESS.

    Hầu hết mã CLDR đều giống với mã ISO 3166-1, với một số ngoại lệ đáng chú ý. Ví dụ: ccTLD (miền cấp cao nhất theo mã quốc gia) của Vương quốc Anh là "uk" (.co.uk) trong khi mã ISO 3166-1 của mã này là "gb" (về mặt kỹ thuật là "Vương quốc Anh" và Bắc Ireland). Tuỳ theo luật hiện hành, thông số này có thể ảnh hưởng đến kết quả.

    Để đặt tham số mã khu vực, hãy gọi phương thức setRegionCode() khi tạo đối tượng FetchPlaceRequest.

  • Mã thông báo phiên

    Mã thông báo phiên là các chuỗi do người dùng tạo theo dõi lệnh gọi Tự động hoàn thành (Mới) dưới dạng "phiên". Tính năng Tự động hoàn thành (Mới) sử dụng mã thông báo phiên để nhóm các giai đoạn truy vấn và lựa chọn địa điểm trong lượt tìm kiếm tự động hoàn thành của người dùng thành một phiên riêng biệt cho mục đích thanh toán. Mã thông báo phiên được chuyển vào các lệnh gọi Chi tiết địa điểm (Mới) theo sau các lệnh gọi Tự động hoàn thành (Mới). Để biết thêm thông tin, hãy xem phần Mã thông báo phiên.

    Để đặt tham số mã thông báo phiên, hãy gọi phương thức setSessionToken() khi tạo đối tượng FetchPlaceRequest.

Ví dụ về Thông tin chi tiết về địa điểm

Ví dụ sau đây yêu cầu các trường ID, NAMEADDRESS cho Toà nhà Empire State ở Thành phố New York.

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