คู่มือนี้จะเน้นความแตกต่างที่สำคัญระหว่างบริการ Places เวอร์ชันเดิมกับคลาส Place ใหม่ การอัปเกรดเป็นคลาสสถานที่ให้ข้อดีที่สำคัญ ซึ่งรวมถึงประสิทธิภาพที่ได้รับการปรับปรุงและรูปแบบการกำหนดราคาใหม่ หากต้องการใช้ประโยชน์จาก Places ให้ได้มากที่สุดและตรวจสอบว่าแอปของคุณเป็นเวอร์ชันล่าสุด โปรดทำความคุ้นเคย กับการเปลี่ยนแปลงที่ระบุไว้ในคู่มือนี้
แนวทางปฏิบัติแนะนำในการเรียกเก็บเงินสำหรับการย้ายข้อมูล
คำแนะนำนี้จะมีผลหากการใช้งาน API ของคุณสูงพอที่จะ เปลี่ยนไปใช้การกำหนดราคาชั้นที่ 2 เมื่อย้ายข้อมูลไปยัง API เวอร์ชันใหม่กว่า ระบบจะเรียกเก็บเงินจากคุณสำหรับ SKU อื่นด้วย เราขอแนะนำให้เปลี่ยนไปใช้ API ใหม่ในเวอร์ชันที่ใช้งานจริงให้เร็วที่สุดเท่าที่จะเป็นไปได้ในช่วงต้นเดือน เพื่อหลีกเลี่ยงค่าใช้จ่ายที่เพิ่มขึ้นในเดือนที่คุณเปลี่ยน ซึ่งจะช่วยให้คุณเข้าถึงระดับราคาต่อเดือนที่คุ้มค่าที่สุด ในเดือนที่ทำการย้ายข้อมูล ดูข้อมูลเกี่ยวกับระดับราคาได้ที่หน้าการกำหนดราคา และคำถามที่พบบ่อยเกี่ยวกับการกำหนดราคา
เปิดใช้ Places API
คลาส Place ใช้บริการ Places API หากต้องการใช้ฟีเจอร์ของคลาส Place ใหม่ คุณต้องเปิดใช้ Places API (ใหม่) ในโปรเจ็กต์ Google Cloud ก่อน ดูข้อมูลเพิ่มเติมได้ที่หัวข้อเริ่มต้นใช้งาน
การเปลี่ยนแปลงทั่วไป
ตารางต่อไปนี้แสดงความแตกต่างหลักบางประการระหว่าง PlacesService
กับ Place
| PlacesService(เดิม) | Place(ใหม่) | 
|---|---|
| เมธอดต้องใช้การเรียกกลับเพื่อจัดการออบเจ็กต์ผลลัพธ์และ google.maps.places.PlacesServiceStatusการตอบกลับ | ใช้ Promise และทำงานแบบไม่พร้อมกัน | 
| วิธีการต้องผ่าน PlacesServiceStatusการตรวจสอบ | ไม่ต้องตรวจสอบสถานะที่จำเป็น ใช้การจัดการข้อผิดพลาดมาตรฐานได้ | 
| ฟิลด์ข้อมูลสถานที่จะจัดรูปแบบโดยใช้รูปแบบ Snake Case | ฟิลด์ข้อมูลสถานที่จะจัดรูปแบบโดยใช้ Camel Case | 
| จำกัดเฉพาะชุดประเภทสถานที่ และฟิลด์ข้อมูลสถานที่ที่กำหนด | มีประเภทสถานที่ และฟิลด์ข้อมูลสถานที่ให้เลือกมากขึ้น ซึ่งจะอัปเดตเป็นประจำ | 
การเปลี่ยนแปลงเฉพาะ API
คลาส Place มี API สำหรับใช้ไลบรารี Places และรองรับรูปแบบการใช้งานที่ทันสมัย เช่น Promises คลาส Place จะแสดงฟิลด์ข้อมูลสถานที่และประเภทสถานที่เดียวกันกับบริการ Places เวอร์ชันเดิม รวมถึงมีค่าใหม่ๆ มากมายสำหรับฟิลด์ข้อมูลสถานที่และประเภทสถานที่
ตารางนี้แสดงวิธีที่ฟีเจอร์ของบริการ Places เชื่อมโยงกับฟีเจอร์ของคลาส Place
โหลดไลบรารี Places
วิธีที่แอปโหลดไลบรารี Places จะขึ้นอยู่กับว่าคุณใช้โปรแกรมโหลด Bootstrap ใด หากแอปใช้การนำเข้าไลบรารีแบบไดนามิก
คุณจะโหลดไลบรารีที่จำเป็นได้ในขณะรันไทม์โดยใช้ตัวดำเนินการ await เพื่อ
เรียก importLibrary() ดังที่แสดงที่นี่
const { Place } = await google.maps.importLibrary("places");
หากแอปใช้แท็กการโหลดสคริปต์โดยตรง
ให้ขอไลบรารี places ในสคริปต์ตัวโหลด
<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&loading=async&libraries=places&callback=initMap">
</script>ดูข้อมูลเพิ่มเติมเกี่ยวกับการโหลด Maps JavaScript API
ส่วนนี้มีคำแนะนำต่อไปนี้ที่จะช่วยคุณย้ายข้อมูลแอปไปใช้ Places API เวอร์ชันล่าสุด
- ย้ายข้อมูลไปยังรายละเอียดสถานที่
- ย้ายข้อมูลไปยังการค้นหาข้อความ (ใหม่)
- ย้ายข้อมูลไปยังการค้นหาในบริเวณใกล้เคียง (ใหม่)
- ย้ายข้อมูลไปยังรูปภาพของสถานที่
- ย้ายข้อมูลไปยังรีวิวสถานที่
- ย้ายข้อมูลไปยัง Place Autocomplete