คู่มือนี้จะเน้นความแตกต่างที่สำคัญระหว่างบริการ 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การตรวจสอบ |
ไม่ต้องตรวจสอบสถานะที่จำเป็น ใช้การจัดการข้อผิดพลาดมาตรฐานได้ |
| ฟิลด์ข้อมูลสถานที่จะจัดรูปแบบโดยใช้ตัวพิมพ์เล็กคั่นด้วยขีดล่าง | ฟิลด์ข้อมูลสถานที่จะจัดรูปแบบโดยใช้รูปแบบ Camel Case |
| จำกัดไว้เฉพาะประเภทสถานที่ และฟิลด์ข้อมูลสถานที่ที่กำหนด | มีประเภทสถานที่ และฟิลด์ข้อมูลสถานที่ให้เลือกมากขึ้นซึ่งอัปเดตเป็นประจำ |
การเปลี่ยนแปลงเฉพาะ API
คลาส Place มี API สำหรับใช้ไลบรารี Places และรองรับรูปแบบการใช้งานที่ทันสมัย เช่น Promise คลาส Place จะแสดงฟิลด์ข้อมูลสถานที่และประเภทสถานที่เดียวกันกับบริการ 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