แนวทางปฏิบัติแนะนำเกี่ยวกับการระบุพิกัดทางภูมิศาสตร์

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

โดยทั่วไป ให้ใช้ Geocoding API เมื่อเข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่แบบสมบูรณ์ (เช่น "48 Pirrama Rd, Pyrmont, NSW, Australia") ใช้บริการ Place Autocomplete ของ Places API เมื่อเข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่ที่ไม่ชัดเจน (ไม่สมบูรณ์) หรือสำหรับแอปพลิเคชันที่ไวต่อเวลาในการตอบสนอง เช่น เมื่อตอบสนองต่อข้อมูลที่ผู้ใช้ป้อน

กรณีการใช้งานและคำแนะนำเกี่ยวกับ API

กรณีการใช้งานและคำแนะนำเกี่ยวกับ API
การมาถึงสถานที่จริง การเลือกจุดหมายขั้นสูง การนำส่งสินค้าในระยะสุดท้าย การรับ/ส่งผู้โดยสารของบริการร่วมเดินทาง ทางเข้าอาคาร หรือการนำทางในวิทยาเขต ใช้เมธอด Search for destinations (SearchDestinations) ใน Geocoding API v4 เพื่อดึงข้อมูลทางเข้าอาคาร จุดนำทางที่กำหนดเส้นทางได้ โครงร่างอาคาร และจุดสังเกตใกล้เคียง ดูเลือกวิธีการเข้ารหัสพิกัดภูมิศาสตร์
ตอบสนองต่อข้อมูลที่ผู้ใช้ป้อนแบบเรียลไทม์ (รวมถึงที่อยู่ที่ผู้ใช้ป้อนซึ่งไม่ชัดเจน ไม่สมบูรณ์ จัดรูปแบบไม่ถูกต้อง หรือสะกดผิด) ใช้บริการ Place Autocomplete ของ Places API เพื่อรับรหัสสถานที่ จากนั้นเรียกใช้ SearchDestinations (สำหรับรายละเอียดเจาะจงเฉพาะพื้นที่) หรือ GeocodePlace (สำหรับพิกัดพื้นฐาน)
ระบบอัตโนมัติที่ประมวลผลที่อยู่ทางไปรษณีย์ที่สมบูรณ์และไม่กำกวม (เช่น "48 Pirrama Rd, Pyrmont, NSW, Australia") ใช้บริการเว็บ Geocoding API v4 (SearchDestinations สำหรับรายละเอียดเจาะจงเฉพาะพื้นที่ หรือ GeocodeAddress สำหรับการค้นหาพิกัด)
ระบบอัตโนมัติที่ประมวลผลคำค้นหาที่กำกวม (เช่น ที่อยู่ไม่สมบูรณ์ จัดรูปแบบไม่ถูกต้อง หรือสะกดผิด) แนะนำให้ระบบอัตโนมัติใช้บริการเว็บ Geocoding API อย่างไรก็ตาม ระบบอัตโนมัติที่มีคำค้นหาที่กำกวม ไม่สมบูรณ์ หรือสะกดผิดในอัตราสูงซึ่งมาจากข้อมูลที่ผู้ใช้ป้อนอาจได้รับประโยชน์จากการเพิ่มวิดเจ็ต Place Autocomplete แบบอินเทอร์แอกทีฟเพื่อให้ผู้ใช้เลือกผลการค้นหาและหลีกเลี่ยงการสะกดที่อยู่ผิด
ปัญหาเวลาในการตอบสนองเมื่อใช้ Directions API (เดิม) หรือ Distance Matrix API (เดิม) โดยมีต้นทาง ปลายทาง หรือจุดอ้างอิงที่ระบุเป็นสตริงที่อยู่ ลดเวลาในการตอบสนองของการเข้ารหัสพิกัดภูมิศาสตร์โดยใช้บริการเติมสถานที่อัตโนมัติของ Places API เพื่อรับรหัสสถานที่ แล้วส่งรหัสสถานที่ไปยัง Directions API (เดิม) หรือ Distance Matrix API (เดิม)

ตอบสนองต่อข้อมูลจากผู้ใช้

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

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

ข้อควรพิจารณาทั้ง 2 ข้อนี้ทำให้ บริการ Place Autocomplete ใน Places API เหมาะอย่างยิ่งสำหรับ Use Case ที่ตอบสนองต่อข้อมูลจากผู้ใช้ Place Autocomplete ออกแบบมาเพื่อแสดงตัวเลือกที่เป็นไปได้หลายรายการและให้ผู้ใช้เลือกตัวเลือกเหล่านั้น Places API สามารถจำกัดให้ค้นหาเฉพาะรหัสพิกัดภูมิศาสตร์หรือที่อยู่โดยไม่รวมธุรกิจได้ นอกจากนี้ ฟังก์ชันการค้นหาการเติมข้อความอัตโนมัติยังสามารถให้น้ำหนักเพื่อแสดงผลการค้นหาเฉพาะสถานที่ได้ด้วย Places API จะแสดงผลรหัสสถานที่ซึ่งสามารถส่งเป็นตำแหน่งที่แก้ความกำกวมอย่างสมบูรณ์ไปยังเว็บเซอร์วิส Geocoding API ซึ่งจะแสดงรายละเอียดที่อยู่แบบเต็ม และแปลงที่อยู่เป็นละติจูดและลองจิจูด นอกจากนี้ คุณยังส่งรหัสสถานที่ไปยัง API อื่นๆ ได้ด้วย เช่น Directions API (เดิม) และ Distance Matrix API (เดิม) (ดูหัวข้อลดเวลาในการตอบสนอง)

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

ดูข้อมูลเพิ่มเติมเกี่ยวกับบริการ Place Autocomplete สำหรับ Android, iOS, JavaScript และ Places API

ระบบอัตโนมัติ

ระบบอัตโนมัติที่ประมวลผลที่อยู่ทางไปรษณีย์ที่สมบูรณ์และไม่กำกวม: คำค้นหาที่ไม่กำกวม เช่น สตริงที่อยู่ทางไปรษณีย์ที่สมบูรณ์ (เช่น "48 Pirrama Rd, Pyrmont, NSW, Australia") จะจัดการได้ดีที่สุดโดยบริการเว็บ Geocoding API แบ็กเอนด์การเข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่ช่วยให้ครอบคลุมที่อยู่ทั่วโลกมากขึ้น และได้รับการเพิ่มประสิทธิภาพเพื่อให้ได้ผลลัพธ์คุณภาพสูงด้วยการค้นหาที่สมบูรณ์และไม่กำกวมประเภทนี้

ระบบอัตโนมัติที่ประมวลผลคำค้นหาที่กำกวม: คำค้นหาที่กำกวมคือคำค้นหาที่มีที่อยู่ซึ่งจัดรูปแบบไม่ถูกต้อง ที่อยู่ไม่สมบูรณ์ หรือมีการสะกดผิด สำหรับระบบอัตโนมัติ เราขอแนะนำให้ใช้ บริการเว็บ Geocoding API อย่างไรก็ตาม Geocoding API ไม่ได้ออกแบบมาเพื่อจัดการกับคำค้นหาที่กำกวม และอาจให้ผลลัพธ์ที่แม่นยำน้อยลงหรือไม่มีผลลัพธ์เลยเมื่อตอบสนองต่อคำค้นหาที่กำกวม หากระบบอัตโนมัติของคุณประมวลผลคำค้นหาที่กำกวมซึ่งมาจากข้อมูลที่ผู้ใช้ป้อนในอัตราสูง คุณอาจได้รับประโยชน์จากการเพิ่มองค์ประกอบแบบอินเทอร์แอกทีฟลงในแอปโดยใช้ บริการ Place Autocomplete ใน Places API เนื่องจากบริการนี้ออกแบบมาเพื่อแสดงตัวเลือกที่เป็นไปได้หลายรายการและให้ผู้ใช้เลือกตัวเลือกเหล่านั้น Places API จะแสดงผลรหัสสถานที่ซึ่งสามารถส่งเป็นตำแหน่งที่แก้ความกำกวมอย่างสมบูรณ์ไปยังเว็บเซอร์วิส Geocoding API ซึ่งจะแสดงรายละเอียดที่อยู่แบบเต็มและเข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่เป็นละติจูดและลองจิจูด ดูข้อมูลเพิ่มเติมเกี่ยวกับบริการ Place Autocomplete สำหรับ Android, iOS, JavaScript และ Places API

ลดเวลาในการตอบสนองสำหรับ Directions API (เดิม) และ Distance Matrix API (เดิม)

เมื่อระบุต้นทาง ปลายทาง หรือจุดอ้างอิงเป็นสตริงที่อยู่ Directions API (เดิม) และ Distance Matrix API (เดิม) จะใช้แบ็กเอนด์เดียวกันกับ Geocoding API เพื่อเข้ารหัสพิกัดภูมิศาสตร์ของที่อยู่เหล่านี้ก่อนคำนวณเส้นทาง ซึ่งจะเพิ่มเวลาในการตอบสนองอย่างมากเมื่อเทียบกับการระบุสถานที่ตั้งเดียวกันเป็นละติจูดและลองจิจูดหรือรหัสสถานที่

หากแอปพลิเคชันของคุณใช้ Directions API (เดิม) หรือ Distance Matrix API (เดิม) ในสถานการณ์ที่ไวต่อเวลาในการตอบสนอง เช่น การตอบสนองต่อข้อมูลที่ผู้ใช้ป้อน และต้นทาง ปลายทาง หรือจุดอ้างอิงของคุณระบุไว้เป็นสตริงที่อยู่ตั้งแต่แรก เราขอแนะนำให้ลดเวลาในการตอบสนองโดยใช้บริการเติมสถานที่อัตโนมัติของ Places API เพื่อแปลงสตริงที่อยู่เป็นรหัสสถานที่ แล้วส่งรหัสสถานที่ไปยัง Directions API (เดิม) หรือ Distance Matrix API (เดิม) ดูข้อมูลเพิ่มเติมเกี่ยวกับบริการ Place Autocomplete สำหรับ Android, iOS, JavaScript และ Places API ดู ตัวอย่าง JavaScript ของ Place Autocomplete และเส้นทางด้วย

บทสรุป

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

จัดการข้อผิดพลาดและการลองใหม่

หากคุณได้รับการตอบกลับ UNKNOWN_ERROR แสดงว่าเกิดจากข้อผิดพลาดชั่วคราว และวิธีที่ดีที่สุดในการจัดการคือลองอีกครั้งหลังจากผ่านไปครู่หนึ่ง เราขอแนะนำให้ใช้ ไลบรารีของไคลเอ็นต์บริการเว็บของ Google Maps Platform ซึ่งรวมถึงตรรกะการลองใหม่และรองรับการตรวจสอบสิทธิ์ Google Maps Platform Premium Plan ไคลเอ็นต์ Java, ไคลเอ็นต์ Python, ไคลเอ็นต์ Go และไคลเอ็นต์ Node.js สำหรับบริการ Google Maps เป็นไลบรารีของไคลเอ็นต์ที่ชุมชนรองรับ ซึ่งพร้อมให้ดาวน์โหลดและมีส่วนร่วมใน GitHub โดยคุณจะเห็นวิธีการติดตั้งและโค้ดตัวอย่างด้วย

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