ภาพรวมการย้ายข้อมูล

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

แนวทางปฏิบัติแนะนำสำหรับการเรียกเก็บเงินสำหรับการย้ายข้อมูล

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

เปิดใช้ Places API

คลาสสถานที่อาศัยบริการ Places API หากต้องการใช้ฟีเจอร์ของคลาสสถานที่แบบใหม่ คุณต้องเปิดใช้ Places API (ใหม่) ในโปรเจ็กต์ Google Cloud ก่อน ดูข้อมูลเพิ่มเติมได้ที่เริ่มต้นใช้งาน

การเปลี่ยนแปลงทั่วไป

ตารางต่อไปนี้แสดงความแตกต่างหลักบางประการระหว่าง PlacesService กับ Place

PlacesService (เดิม) Place (ใหม่)
เมธอดต้องใช้การเรียกกลับเพื่อจัดการออบเจ็กต์ผลลัพธ์และgoogle.maps.places.PlacesServiceStatusคำตอบ ใช้ Promises และทํางานแบบไม่พร้อมกัน
วิธีการต้องเลือกช่องทำเครื่องหมาย PlacesServiceStatus ไม่ต้องมีการตรวจสอบสถานะ สามารถใช้การจัดการข้อผิดพลาดมาตรฐานได้
ฟิลด์ข้อมูลสถานที่มีการจัดรูปแบบโดยใช้รูปแบบ Snake Case ช่องข้อมูลสถานที่มีการจัดรูปแบบโดยใช้รูปแบบ Camel Case
จำกัดไว้ที่ประเภทสถานที่และช่องข้อมูลสถานที่ชุดหนึ่งๆ มีตัวเลือกประเภทสถานที่และฟิลด์ข้อมูลสถานที่ที่อัปเดตเป็นประจำเพิ่มเติม

การเปลี่ยนแปลงเฉพาะ API

คลาสสถานที่มี API สําหรับการใช้ไลบรารีสถานที่ และรองรับรูปแบบการใช้งานสมัยใหม่ เช่น Promise คลาสสถานที่จะแสดงช่องข้อมูลสถานที่และประเภทสถานที่เดียวกันกับบริการ Places รุ่นเดิม รวมถึงมีค่าใหม่มากมายสำหรับช่องข้อมูลสถานที่และประเภทสถานที่

ตารางนี้แสดงวิธีที่ฟีเจอร์ของบริการสถานที่ทำงานร่วมกับฟีเจอร์ของคลาสสถานที่

บริการ Places (เดิม) คลาสสถานที่ (ใหม่)
ช่องข้อมูลสถานที่ ช่องข้อมูลคลาสสถานที่
ประเภทสถานที่ ประเภทสถานที่
PlacesService.findPlaceFromQuery() Place.searchByText()
PlacesService.findPlaceFromPhoneNumber() Place.searchByText()
PlacesService.textSearch() Place.searchByText()
PlacesService.nearbySearch() Place.searchNearby()
PlacesService.getDetails() Place.fetchFields()
Places.AutocompletionRequest Places.AutocompleteRequest
Places.AutocompletePrediction Places.PlacePrediction
คลาส Autocomplete คลาส PlaceAutocompleteElement
คลาส SearchBox ---

โหลดไลบรารีสถานที่

วิธีที่แอปโหลดไลบรารี 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 เวอร์ชันล่าสุด