คุณสามารถขอรายละเอียดเพิ่มเติมเกี่ยวกับสถานที่ประกอบธุรกิจหรือจุดที่น่าสนใจที่เฉพาะเจาะจงได้โดยใช้รหัสสถานที่และส่งคำขอรายละเอียดสถานที่ (ใหม่) รายละเอียดสถานที่ (ใหม่) จะแสดงข้อมูลที่ครอบคลุมมากขึ้นเกี่ยวกับสถานที่ที่ระบุ เช่น ที่อยู่แบบเต็ม หมายเลขโทรศัพท์ การให้คะแนนของผู้ใช้ และรีวิว
คุณสามารถรับรหัสสถานที่ได้หลายวิธี โดยคุณสามารถใช้สิ่งต่อไปนี้ได้
คำขอรายละเอียดสถานที่ (ใหม่)
คุณสามารถขอรายละเอียดสถานที่ได้โดยเรียกใช้
PlacesClient.fetchPlace()
และส่งออบเจ็กต์
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 ซึ่งรวมเฉพาะฟิลด์ที่คุณขอโดยใช้รายการฟิลด์ ผลลัพธ์ข้อมูลสถานที่ต้องไม่ว่างเปล่า ดังนั้นระบบจะแสดงเฉพาะผลลัพธ์สถานที่ที่มีข้อมูลเท่านั้น (เช่น หากสถานที่ที่ขอไม่มีรูปภาพ ช่องรูปภาพจะไม่แสดงในผลลัพธ์)
หากต้องการเข้าถึงฟิลด์ข้อมูล ให้เรียกใช้เมธอดที่เกี่ยวข้อง
เช่น หากต้องการเข้าถึงชื่อสถานที่ ให้เรียกใช้ getName()
พารามิเตอร์ที่จำเป็น
พารามิเตอร์ที่จำเป็นสำหรับ FetchPlaceRequest มีดังนี้
-
รหัสสถานที่
ตัวระบุข้อความที่ระบุสถานที่โดยไม่ซ้ำกัน ซึ่งแสดงผลจากการค้นหาข้อความ (ใหม่), การค้นหาในบริเวณใกล้เคียง (ใหม่) หรือการเติมข้อความอัตโนมัติ (ใหม่) ดูข้อมูลเพิ่มเติมเกี่ยวกับรหัสสถานที่ได้ที่ภาพรวมรหัสสถานที่
-
รายการช่อง
เมื่อขอสถานที่ คุณต้องระบุข้อมูลสถานที่ที่จะแสดงผล โดยส่งรายการค่า
Place.Fieldที่ระบุข้อมูลที่จะแสดงผล ไม่มีรายการเริ่มต้นของช่องที่แสดงผลในการตอบกลับรายการช่องเป็นแนวทางปฏิบัติที่ดีในการออกแบบเพื่อให้แน่ใจว่าคุณไม่ได้ขอข้อมูลที่ไม่จำเป็น ซึ่งจะช่วยหลีกเลี่ยงเวลาในการประมวลผลและการเรียกเก็บเงินที่ไม่จำเป็น รายการนี้เป็นข้อพิจารณาที่สำคัญเนื่องจากส่งผลต่อค่าใช้จ่ายสำหรับคำขอแต่ละรายการ ดูข้อมูลเพิ่มเติมได้ที่การใช้งานและการเรียกเก็บเงิน
ระบุช่องต่อไปนี้อย่างน้อย 1 ช่อง
ช่องต่อไปนี้จะทริกเกอร์ SKU สำหรับรหัสเท่านั้นของรายละเอียดสถานที่ที่จำเป็น
Place.Field.ID
Place.Field.PHOTO_METADATAS
Place.Field.RESOURCE_NAME
ดูรายการฟิลด์ข้อมูลและ SKU ที่เกี่ยวข้องทั้งหมดได้ที่ช่องข้อมูลสถานที่ (ใหม่)
ช่องต่อไปนี้จะทริกเกอร์ SKU รายละเอียดสถานที่ที่จำเป็น
Place.Field.ADDRESS_COMPONENTS
ADR_FORMAT_ADDRESS
Place.Field.FORMATTED_ADDRESS*
* ใช้แทนPlace.Field.ADDRESS(เลิกใช้งานแล้ว)
Place.Field.LOCATION*
* ใช้แทนPlace.Field.LAT_LNG(เลิกใช้งานแล้ว)
Place.Field.PLUS_CODE
Place.Field.SHORT_FORMATTED_ADDRESS
Place.Field.TYPES
Place.Field.VIEWPORTดูรายการฟิลด์ข้อมูลและ SKU ที่เกี่ยวข้องทั้งหมดได้ที่ช่องข้อมูลสถานที่ (ใหม่)
ช่องต่อไปนี้จะทริกเกอร์ SKU รายละเอียดสถานที่แบบมือโปร
Place.Field.ACCESSIBILITY_OPTIONS*
* ใช้แทนPlace.Field.WHEELCHAIR_ACCESSIBLE_ENTRANCE(เลิกใช้งานแล้ว)
Place.Field.BUSINESS_STATUS
Place.Field.DISPLAY_NAME*
* ใช้แทนPlace.Field.NAMEซึ่งเลิกใช้งานแล้ว
Place.Field.GOOGLE_MAPS_URI
Place.Field.ICON_BACKGROUND_COLOR
Place.Field.ICON_MASK_URL*
* ใช้แทนPlace.Field.ICON_URL(เลิกใช้งานแล้ว)
Place.Field.PRIMARY_TYPE
Place.Field.PRIMARY_TYPE_DISPLAY_NAME
Place.Field.SUB_DESTINATIONS
Place.Field.UTC_OFFSETดูรายการฟิลด์ข้อมูลและ SKU ที่เกี่ยวข้องทั้งหมดได้ที่ช่องข้อมูลสถานที่ (ใหม่)
ช่องต่อไปนี้จะทริกเกอร์ SKU ระดับองค์กรสำหรับรายละเอียดสถานที่
Place.Field.CURRENT_OPENING_HOURS
Place.Field.CURRENT_SECONDARY_OPENING_HOURS
Place.Field.INTERNATIONAL_PHONE_NUMBER*
* ใช้แทนPlace.Field.PHONE_NUMBERซึ่งเลิกใช้งานแล้ว
Place.Field.NATIONAL_PHONE_NUMBER
Place.Field.OPENING_HOURS
Place.Field.PRICE_LEVEL
Place.Field.RATING
Place.Field.SECONDARY_OPENING_HOURS
Place.Field.USER_RATING_COUNT*
* ใช้แทนPlace.Field.USER_RATINGS_TOTALซึ่งเลิกใช้งานแล้ว
Place.Field.WEBSITE_URIดูรายการฟิลด์ข้อมูลและ SKU ที่เกี่ยวข้องทั้งหมดได้ที่ช่องข้อมูลสถานที่ (ใหม่)
ช่องต่อไปนี้จะทริกเกอร์ SKU รายละเอียดสถานที่ Enterprise Plus
Place.Field.ALLOWS_DOGS
Place.Field.CURBSIDE_PICKUP
Place.Field.DELIVERY
Place.Field.DINE_IN
Place.Field.EDITORIAL_SUMMARY
Place.Field.EV_CHARGE_OPTIONS
Place.Field.FUEL_OPTIONS
Place.Field.GOOD_FOR_CHILDREN
Place.Field.GOOD_FOR_GROUPS
Place.Field.GOOD_FOR_WATCHING_SPORTS
Place.Field.LIVE_MUSIC
Place.Field.MENU_FOR_CHILDREN
Place.Field.OUTDOOR_SEATING
Place.Field.PARKING_OPTIONS
Place.Field.PAYMENT_OPTIONS
Place.Field.RESERVABLE
Place.Field.RESTROOM
Place.Field.REVIEWS
Place.Field.SERVES_BEER
Place.Field.SERVES_BREAKFAST
Place.Field.SERVES_BRUNCH
Place.Field.SERVES_COCKTAILS
Place.Field.SERVES_COFFEE
Place.Field.SERVES_DESSERT
Place.Field.SERVES_DINNER
Place.Field.SERVES_LUNCH
Place.Field.SERVES_VEGETARIAN_FOOD
Place.Field.SERVES_WINE
Place.Field.TAKEOUTดูรายการฟิลด์ข้อมูลและ SKU ที่เกี่ยวข้องทั้งหมดได้ที่ช่องข้อมูลสถานที่ (ใหม่)
พารามิเตอร์ที่ไม่บังคับ
พารามิเตอร์ที่ไม่บังคับสำหรับ FetchPlaceRequest มีดังนี้
รหัสภูมิภาค
รหัสภูมิภาคที่ใช้จัดรูปแบบการตอบกลับ ซึ่งระบุเป็นค่า รหัส CLDR 2 หลัก ไม่มีค่าเริ่มต้น
หากชื่อประเทศของช่อง
Place.Field.FORMATTED_ADDRESSในการตอบกลับตรงกับregionCodeระบบจะไม่รวมรหัสประเทศจากPlace.Field.FORMATTED_ADDRESSรหัส CLDR ส่วนใหญ่จะเหมือนกับรหัส ISO 3166-1 โดยมีข้อยกเว้นที่สำคัญบางประการ ตัวอย่างเช่น ccTLD ของสหราชอาณาจักรคือ "uk" (.co.uk) ขณะที่รหัส ISO 3166-1 คือ "gb" (ในทางเทคนิคสำหรับหน่วยงาน "สหราชอาณาจักรบริเตนใหญ่และไอร์แลนด์เหนือ") พารามิเตอร์นี้อาจส่งผลต่อผลลัพธ์ตามกฎหมายที่เกี่ยวข้อง
หากต้องการตั้งค่าพารามิเตอร์รหัสภูมิภาค ให้เรียกใช้เมธอด
setRegionCode()เมื่อสร้างออบเจ็กต์FetchPlaceRequest-
โทเค็นของเซสชัน
โทเค็นของเซสชันคือสตริงที่ผู้ใช้สร้างขึ้นซึ่งติดตามการเรียกใช้ Autocomplete (ใหม่) เป็น "เซสชัน" การเติมข้อความอัตโนมัติ (ใหม่) ใช้โทเค็นของเซสชันเพื่อจัดกลุ่มระยะการค้นหาและการเลือกสถานที่ของการค้นหาด้วยการเติมข้อความอัตโนมัติของผู้ใช้ไว้ในเซสชันแยกต่างหากเพื่อวัตถุประสงค์ในการเรียกเก็บเงิน ระบบจะส่งโทเค็นของเซสชันไปยังการเรียกใช้รายละเอียดสถานที่ (ใหม่) ที่ตามหลังการเรียกใช้การเติมข้อความอัตโนมัติ (ใหม่) ดูข้อมูลเพิ่มเติมได้ที่โทเค็นของเซสชัน
หากต้องการตั้งค่าพารามิเตอร์โทเค็นของเซสชัน ให้เรียกใช้เมธอด
setSessionToken()เมื่อสร้างออบเจ็กต์FetchPlaceRequest
ตัวอย่างรายละเอียดสถานที่
ตัวอย่างต่อไปนี้ขอฟิลด์ ID, DISPLAY_NAME และ FORMATTED_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.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);