Geospatial API ใช้ข้อมูล VPS และ GPS ร่วมกันเพื่อสร้างการเปลี่ยนรูปแบบเชิงพื้นที่ที่มีความแม่นยำสูง API นี้ใช้ได้ในทุกที่ที่อุปกรณ์สามารถระบุตำแหน่งได้ ดังนี้
- ในพื้นที่ที่มีความแม่นยำของ GPS ต่ำ เช่น พื้นที่ในอาคารและสภาพแวดล้อมในเมืองที่หนาแน่น API จะอาศัยความครอบคลุมของ VPS เพื่อสร้างการเปลี่ยนรูปแบบที่มีความแม่นยำสูง
- ในสภาพแวดล้อมกลางแจ้งที่มีสิ่งกีดขวางเหนือศีรษะเพียงเล็กน้อยหรือไม่มีเลย Geospatial API อาจใช้ข้อมูลตำแหน่ง GPS ที่พร้อมใช้งานเพื่อสร้างการเปลี่ยนรูปแบบเชิงพื้นที่ที่มีความแม่นยำสูงได้
คุณสามารถระบุความพร้อมใช้งานของ VPS ในตำแหน่งแนวนอนที่ระบุได้ก่อนที่เซสชัน AR จะเริ่มขึ้น และใช้ข้อมูลดังกล่าวเพื่อสร้างประสบการณ์ที่เฉพาะเจาะจงมากขึ้น เช่น เพื่อแสดงปุ่ม "เข้าสู่ AR" เฉพาะเมื่อ VPS พร้อมใช้งานเท่านั้น
เปิดใช้ ARCore API
แอปของคุณต้องเปิดใช้ ARCore API เพื่อตรวจสอบความพร้อมใช้งานของ VPS
ตรวจสอบความพร้อมให้บริการของ VPS ในแอป
Geospatial API สามารถใช้ได้ทุกที่ที่อุปกรณ์ระบุตำแหน่งได้ หากประสบการณ์ AR ของคุณขึ้นอยู่กับความครอบคลุมของ VPS คุณสามารถใช้ GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: เพื่อรับ GARVPSAvailabilityFuture ซึ่งเป็นงานที่ทำงานแบบไม่พร้อมกันซึ่งจะตรวจสอบความพร้อมใช้งานของ VPS ในตำแหน่งแนวนอนที่ระบุ
เมื่อได้รับ GARVPSAvailabilityFuture แล้ว คุณจะดูผลลัพธ์ได้โดยการปลุกหรือผ่านคอลแบ็ก
สำรวจผลลัพธ์
ใช้ GARFuture.state เพื่อดูสถานะของ Future โดยสถานะมี 3 สถานะดังนี้
GARFutureStatePending: การดำเนินการยังไม่เสร็จสมบูรณ์ จึงไม่ทราบผลลัพธ์GARFutureStateCancelled:GARFuture#cancelได้ยกเลิกการดำเนินการแล้ว ระบบจะไม่โทรกลับหาหมายเลขใดก็ตามที่ลงทะเบียนไว้GARFutureStateDone: การดำเนินการเสร็จสมบูรณ์ ใช้GARVPSAvailabilityFuture.resultเพื่อดูผลลัพธ์
คุณสามารถตรวจสอบ GARFuture.state ต่อไปได้จนกว่างานจะเสร็จสมบูรณ์
รับผลลัพธ์ผ่านการติดต่อกลับ
นอกจากนี้ คุณยังดูผลลัพธ์ของ Future ผ่านคอลแบ็กได้ด้วย ใช้ GARSession#checkVPSAvailabilityAtCoordinate:completionHandler: แล้วป้อน completionHandler ระบบจะเรียกใช้ completionHandler นี้ในเธรดหลักไม่นานหลังจากที่ Future มีสถานะ GARFutureStateDone
ยกเลิก Future
ใช้ GARFuture#cancel เพื่อพยายามยกเลิก Future เนื่องจากการขนานของชุดข้อความ คุณจึงอาจยกเลิกไม่สำเร็จ
GARFuture#cancel จะแสดงผล YES หากการพยายามนี้สำเร็จ และเป็น NO ในกรณีอื่นๆ
ใช้ Geospatial API ที่ไม่มีความครอบคลุมของ VPS
นอกจากนี้ คุณยังใช้ Geospatial API ในพื้นที่ที่ไม่มี VPS ครอบคลุมได้ด้วย ในสภาพแวดล้อมกลางแจ้งที่มีสิ่งกีดขวางเหนือศีรษะเพียงเล็กน้อยหรือไม่มีเลย GPS อาจเพียงพอที่จะสร้างท่าทางที่มีความแม่นยำสูง
ขั้นตอนถัดไป
- รับตำแหน่งเชิงพื้นที่ของกล้องอุปกรณ์เพื่อระบุตำแหน่งที่แน่นอนของอุปกรณ์ของผู้ใช้ในโลกแห่งความเป็นจริง