รายละเอียดสถานที่ (ใหม่)

เลือกแพลตฟอร์ม: Android iOS JavaScript เว็บเซอร์วิส

คุณสามารถขอรายละเอียดเพิ่มเติมเกี่ยวกับสถานประกอบการหรือจุดที่น่าสนใจได้โดยใช้รหัสสถานที่และส่งคำขอรายละเอียดสถานที่ (ใหม่) รายละเอียดสถานที่ (ใหม่) จะแสดงข้อมูลที่ครอบคลุมมากขึ้นเกี่ยวกับสถานที่ที่ระบุ เช่น ที่อยู่ หมายเลขโทรศัพท์ คะแนน และรีวิวของผู้ใช้

คุณรับรหัสสถานที่ได้หลายวิธี คุณสามารถใช้สิ่งต่อไปนี้

คำขอรายละเอียดสถานที่ (ใหม่)

คุณสามารถขอรายละเอียดสถานที่ได้โดยเรียกใช้ 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 ฟิลด์

    • ฟิลด์ต่อไปนี้จะทริกเกอร์ Place Details Essentials IDs Only SKU

      Place.Field.DISPLAY_NAME
      Place.Field.ID
      Place.Field.PHOTO_METADATAS
      Place.Field.RESOURCE_NAME
    • ฟิลด์ต่อไปนี้จะทริกเกอร์ Place Details Essentials SKU

      Place.Field.ADDRESS_COMPONENTS
      ADR_FORMAT_ADDRESS
      Place.Field.FORMATTED_ADDRESS
      Place.Field.LOCATION
      Place.Field.PLUS_CODE
      Place.Field.SHORT_FORMATTED_ADDRESS
      Place.Field.TYPES
      Place.Field.VIEWPORT
    • ฟิลด์ต่อไปนี้จะทริกเกอร์ Place Details Pro SKU

      Place.Field.ACCESSIBILITY_OPTIONS
      Place.Field.BUSINESS_STATUS
      Place.Field.GOOGLE_MAPS_URI
      Place.Field.ICON_BACKGROUND_COLOR
      Place.Field.ICON_MASK_URL
      Place.Field.PRIMARY_TYPE
      Place.Field.PRIMARY_TYPE_DISPLAY_NAME
      Place.Field.SUB_DESTINATIONS
      Place.Field.UTC_OFFSET
    • ช่องต่อไปนี้จะทริกเกอร์ Place Details Enterprise SKU

      Place.Field.CURRENT_OPENING_HOURS
      Place.Field.CURRENT_SECONDARY_OPENING_HOURS
      Place.Field.INTERNATIONAL_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.WEBSITE_URI
    • ช่องต่อไปนี้จะทริกเกอร์ Place Details Enterprise Plus SKU

      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

พารามิเตอร์ที่ไม่บังคับ

พารามิเตอร์ที่ไม่บังคับสําหรับ 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

  • โทเค็นของเซสชัน

    โทเค็นเซสชันคือสตริงที่ผู้ใช้สร้างขึ้นซึ่งติดตามการเรียกใช้ฟีเจอร์เติมข้อความอัตโนมัติ (ใหม่) เป็น "เซสชัน" ฟีเจอร์เติมข้อความอัตโนมัติ (ใหม่) ใช้โทเค็นเซสชันเพื่อจัดกลุ่มการค้นหาและวางระยะการเลือกของการค้นหาที่เติมข้อความอัตโนมัติของผู้ใช้ไว้ในเซสชันที่แยกต่างหากเพื่อวัตถุประสงค์ในการเรียกเก็บเงิน ระบบจะส่งโทเค็นเซสชันไปยังการเรียกใช้รายละเอียดสถานที่ (ใหม่) ที่ตามหลังการเรียกใช้การเติมข้อความอัตโนมัติ (ใหม่) ดูข้อมูลเพิ่มเติมได้ที่โทเค็นเซสชัน

    หากต้องการตั้งค่าพารามิเตอร์โทเค็นเซสชัน ให้เรียกใช้เมธอด 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);