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 อาจเพียงพอที่จะสร้างท่าทางที่มีความแม่นยำสูง
ขั้นตอนถัดไป
- รับตำแหน่งเชิงพื้นที่ของกล้องอุปกรณ์เพื่อระบุตำแหน่งที่แน่นอนของอุปกรณ์ของผู้ใช้ในโลกแห่งความเป็นจริง