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